黑马程序员技术交流社区

标题: 【成都校区】打包工具Webpack [打印本页]

作者: 小刀葛小伦    时间: 2020-1-9 18:30
标题: 【成都校区】打包工具Webpack
Webpack安装
全局安装
[JavaScript] 纯文本查看 复制代码
npm run build
npm install webpack ‐g
npm install webpack‐cli ‐g
安装后查看版本号
[JavaScript] 纯文本查看 复制代码
webpack ‐v
快速入门
1.JS打包
(1)创建src文件夹,创建bar.js
[JavaScript] 纯文本查看 复制代码
exports.info=function(str){
document.write(str);
}
(2)src下创建logic.js
[JavaScript] 纯文本查看 复制代码
exports.add=function(a,b){
return a+b;
}
(3)src下创建main.js
[JavaScript] 纯文本查看 复制代码
var bar= require('./bar');
var logic= require('./logic');
bar.info( 'Hello world!'+ logic.add(100,200));
(4)创建配置文件webpack.config.js ,该文件与src处于同级目录.
[JavaScript] 纯文本查看 复制代码
var path = require("path");
  module.exports = {
    entry: './src/main.js',
    output: {
    path: path.resolve(__dirname, './dist'),
    filename: 'bundle.js'
  }
};
以上代码的意思是:读取当前目录下src文件夹中的main.js(入口文件)内容,把对应的js文件打包,打包后的文件放入当前目录的dist文件夹下,打包后的js文件名为bundle.js.
(5)执行编译命令

[JavaScript] 纯文本查看 复制代码
webpack

执行后查看bundle.js 会发现里面包含了上面两个js文件的内容
(7)创建index.html ,引用bundle.js
[JavaScript] 纯文本查看 复制代码
<!doctype html>
    <html>
      <head>
      </head>
    <body>
        <script src="dist/bundle.js"></script>
    </body>
</html>

测试调用index.html,会发现有内容输出。
2.CSS打包
(1)安装style-loader和 css-loader
Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用loader 进行转换。Loader 可以理解为是模块和资源的转换器,它本身是一个函数,接受源文件作为参数,返回转换的结果。这样,我们就可以通过 require 来加载任何类型的模块或文件,比如CoffeeScript、 JSX、 LESS 或图片。首先我们需要安装相关Loader插件,css-loader 是将 css 装载到 javascript;style-loader 是让 javascript 认识css.

[JavaScript] 纯文本查看 复制代码
cnpm install style‐loader css‐loader ‐‐save‐dev

(2)修改webpack.config.js
[JavaScript] 纯文本查看 复制代码
var path = require("path");
  module.exports = {
  entry: './src/main.js',
  output: {
  path: path.resolve(__dirname, './dist'),
  filename: 'bundle.js'
  },
  module: {
    rules: [
    {
      test: /\.css$/,
      use: ['style‐loader', 'css‐loader']
    }
    ]
  }
};
(3)在src文件夹创建css文件夹,css文件夹下创建css1
[JavaScript] 纯文本查看 复制代码
body{
  background:red;
}
(4)修改main.js ,引入css1.css
[JavaScript] 纯文本查看 复制代码
require('./css1.css');
(5)重新运行webpack
(6)运行index.html看看背景是不是变成红色






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2