zoukankan      html  css  js  c++  java
  • webpack 安装

    基本命令
    
          webpack         // 最基本的启动webpack的方法
          webpack -w      // 提供watch方法;实时进行打包更新
          webpack -p      // 对打包后的文件进行压缩
          webpack -d      // 提供source map,方便调式代码
    
    全局安装
    
          # npm install webpack -g
          项目安装:
          # 进入项目目录
          # 确定已经有 package.json,没有就通过 npm init 创建
          # 安装 webpack 依赖
          # npm install webpack --save-dev
    
    使用ES6
    
        安装 babel-loader: 
        # npm install babel-loader --save-dev
        安装转码规则:       
        # npm install babel-preset-es2015 --save-dev
        ES7不同阶段语法提案的转码规则(共有4个阶段),选装一个
        # npm install --save-dev babel-preset-stage-0
        # npm install --save-dev babel-preset-stage-1
        # npm install --save-dev babel-preset-stage-2
        # npm install --save-dev babel-preset-stage-3
        参考格式:
        {
            test: /.js$/,
            loader: 'babel?presets[]=es2015,presets[]=stage-0'
        }
    
    编译css
    
        安装css-loader:  
        # npm install css-loader  --save-dev
        安装style-loader  
        # npm install style-loader  --save-dev
        参考格式:
        {
            test: /.css$/,
            loaders: ['style', 'css', 'autoprefixer']
        }
    
    编译less
    
        # npm install less --save-dev
        安装less-loader: 
        # npm install less-loader --save-dev
        参考格式:
        {
            test: /.less/,
            loaders: ['style', 'css', 'autoprefixer', 'less'],
        }
    
    使用autoprefixer自动补上浏览器兼容
    
        # npm install autoprefixer-loader --save-dev
        参考格式:
        {
            test: /.css$/,
            loaders: ['style', 'css', 'autoprefixer']
        }, {
            test: /.less/,
            loaders: ['style', 'css', 'autoprefixer', 'less'],
        }
    
    编译文件
    
        安装file-loader: 
        # npm install file-loader --save-dev
        参考格式:
        {
            test: /.(eot|woff|svg|ttf|woff2|gif)(?|$)/,
            loader: 'file-loader?name=[hash].[ext]'
        }
    
    编译图片
    
      # npm install url-loader --save-dev
      参考格式:
      {
      test: /.(png|jpg)$/,
      loader: 'url?limit=1200&name=[hash].[ext]'
      }
    
    编译JSX
    
      # npm install jsx-loader --save-dev
      # npm install babel-preset-react --save-dev
      参考格式:
      {
      test: /.jsx$/,
      loaders: ['jsx', 'babel?presets[]=es2015,presets[]=stage-0,presets[]=react']
      }
    
    示例源码
    
    在项目目录下,新建一个webpack.config.js文件,把下面代码复制进去,然后在新建一个app.js和index.js文件,写上console.log('你好世界');
    执行命令:webpack 然后找到build目录就看到编译后的文件了
      var webpack = require('webpack');
      
      module.exports = {
          entry: {
              app: './app', //编译的入口文件
              index: './index', //编译的入口文件
          },
          output: {
              publicPath: '/build/', //服务器根路径
              path: './build', //编译到当前目录
              filename: '[name].js' //编译后的文件名字
          },
          module: {
              loaders: [{
                      test: /.js$/,
                      loader: 'babel?presets=es2015'
                  }, {
                      test: /.css$/,
                      loaders: ['style', 'css', 'autoprefixer']
                  }, {
                      test: /.less/,
                      loaders: ['style', 'css', 'autoprefixer', 'less'],
                  }, {
                      test: /.(eot|woff|svg|ttf|woff2|gif)(?|$)/,
                      loader: 'file-loader?name=[hash].[ext]'
                  }, {
                      test: /.(png|jpg)$/,
                      loader: 'url?limit=1200&name=[hash].[ext]' //注意后面那个limit的参数,当你图片大小小于这个限制的时候,会自动启用base64编码图片
                  }
              ]
          },
          plugins: [
                  new webpack.optimize.CommonsChunkPlugin('common.js') //将公用模块,打包进common.js
          ],
          resolve: {
              extensions: ['', '.js', '.jsx'] //后缀名自动补全
          }
      };
  • 相关阅读:
    百度关键词搜索量查询,百度,谷歌关键词查询工具
    推荐免费服务免费空间服务器检测
    如何成为能让大家尊重的程序员
    四天玩转windows phone开发视频之第二天总结
    用三张图片详解Asp.Net 全生命周期
    程序员该如何规划自己的人生
    博客正式开通啦!
    技术与创业不矛盾(两者是先后关系)
    工作五年的感悟
    委托与事件以及应用
  • 原文地址:https://www.cnblogs.com/zero7room/p/6879538.html
Copyright © 2011-2022 走看看