webpack 中使用的包更新非常频繁,使用方式可能很快就会改变,解决方式

  1. 看webapck文档 和 包的使用文档

  2. 看包的源码

  3. 其他。。。

环境

win10 + webstorm 2019.1.3 + node 12.x

node 安装

往上一堆资料可以参考(比较简单)

初始化项目配置

yarn init -y //使用默认数据初始化

文件结构

│  package.json
│  webpack.config.js
│  yarn.lock
│
├─dist //打包后自动出现
│      app.js
│
├─node_modules //安装包后自动出现
└─src
    └─js
            app.js
            common.js
            es6.js
            require.js

安装 webpack

yarn add -D webpack webpack-cli //开发依赖

源文件内容

app.js
import e from './es6';
const r = require('./require');
const c = require('./common');
console.log('es6-module: ', e);
console.log('require-js: ', r);
console.log('common-js: ', c);
common.js
module.exports = 'this is commonjs use method';
require.js
define(function () {
   return 'require-js is here';
});
es6.js
export default 'this is es6 file';

package.json 项目配置

{
  "name": "demo_sample_bundle",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "scripts": {
    "dev": "webpack --mode=development",
    "build": "webpack --mode=production"
  },
  "devDependencies": {
    "webpack": "^4.33.0",
    "webpack-cli": "^3.3.3"
  }
}

webconfig.config.js //打包配置

const path = require('path');
module.exports = {
    entry: {
        app: "./src/js/app.js"
    },
    output: {
        filename: '[name].js',
        path: path.join(path.resolve(__dirname), 'dist')
    },
    // mode: 'production'
};

打包命令

npx webpack //使用打包配置

需要在项目设置script项才可以使用对应的命令
npm run dev //未压缩的代码(开发环境)
npm run build //压缩后的代码(生产环境)

...(还有一些不常用的打包命令)

demo__webpack的更多相关文章

随机推荐

  1. Neutron中的网络I/O虚拟化

    为了提升网络I/O性能.虚拟化的网络I/O模型也在不断的演化: 1,全虚拟化网卡(emulation).如VMware中的E1000用来仿真intel 82545千兆网卡,它的功能更完备,如相比一些半 ...

  2. UVa 10954 Add All(优先队列)

    题意  求把全部数加起来的最小代价  a+b的代价为(a+b) 越先运算的数  要被加的次数越多  所以每次相加的两个数都应该是剩下序列中最小的数  然后结果要放到序列中  也就是优先队列了 #inc ...

  3. 自然常数 e 的理解与应用

    某彩票中奖率是百万分之一,则一个人买一百万张彩票仍不中奖的概率是: (1−1106)106≈1e e 往往出现在: 许多微小事件带来的总体变化 随机性和无穷多:

  4. 洛谷 P1083 [ NOIP 2012 ] 借教室 —— 线段树 / 二分差分数组

    题目:https://www.luogu.org/problemnew/show/P1083 当初不会线段树的时候做这道题...对差分什么不太熟练,一直没A,放在那儿不管... 现在去看,线段树就直接 ...

  5. 05、ListActivity的使用

    第一个好处:处理共同的操作,避免代码重复 假设我要写第二个界面我也是需要使用到mapView,那你都要去查找一个mapView.都要获取一个Map的一个地图. 第二个好处:代码规范(方便阅读,真实开发 ...

  6. shell脚本-数组

    shell脚本-数组 数组 变量:存储单个元素的内存空间. 数组:存储多个元素的连续的内存空间,相当于多个变量的集合. 数组索引:编号从0开始,属于数值索引.索引可支持使用自定义的格式,而不仅是数值格 ...

  7. 一个thinkphhp的聊天类,感觉还可以

    <?phpnamespace Common\Controller;use Think\Controller;class HxController extends Controller{ /** ...

  8. Windows虚拟机中无法传输Arduino程序的问题

    现象 最近儿子在学习机器人编程,其中有一步需要把板子和电脑用USB线相连接,然后把在电脑中编辑好的程序传输到Arduino板子上.在Windows笔记本上能正常工作,但在我的Mac笔记本的Window ...

  9. 微信小程序获取地理位置

    小程序只支持获取当前位置的经纬度,并不能直接获取到地理名称,需要通过第三方来逆地址解析,这里我选择的是腾讯位置服务 在使用前需要去申请key,这里是地址:https://lbs.qq.com/cons ...

  10. Js控制样式的诸多方法

    function TableCss(options){ //如果没参数,就退出 if(arguments.length < 1 || !document.getElementById(optio ...