zoukankan      html  css  js  c++  java
  • webpack 3.X学习之基本配置

    创建配置文件webpack.config.js

    在根目录在手动创建webpack.config.js,配置基本模板

    module.exports ={
        entry:{},
        output:{},
        module:{},
        plugins:[],
        devServer:{}
    }
    
    • entry:配置入口文件的地址,可以是单一入口,也可以是多入口;
    • output:配置出口文件的地址,支持多出口配置;
    • module:配置模块,主要解析CSS和图片转换压缩等功能;
    • plugins:配置插件;
    • devServer:配置开发服务功能;

    entry选项配置

    这个选项配置我们要压缩的文件一般是javascript。

    entry:{
        entry:'./src/entery.js'
    }
    

    output选择配置

    出口配置用来告诉webpack最后打包文件的地址和文件名称;

    output:{
        //打包后的文件路径
        path: path.resolve(__dirname,'dist'),
        //打包后的文件名称
        filename:'bundle.js'
    }
    

    当然还要引入path模块,这个是nodejs自带的模块;在webpack.config.js文件的头部引入;

    const path = require('path');
    

    现在的代码结构:

    const path = require('path');
    module.exports={
        //入口文件的配置项
        entry:{
            entry:'./src/entry.js'
        },
        //出口文件的配置项
        output:{
            //输出的路径,用了Node语法
            path:path.resolve(__dirname,'dist'),
            //输出的文件名称
            filename:'bundle.js'
        },
        //模块:例如解读CSS,图片如何转换,压缩
        module:{},
        //插件,用于生产模版和各项功能
        plugins:[],
        //配置webpack开发服务功能
        devServer:{}
    }
    

    多入口,出口配置

    const path = require('path');
    module.exports={
        //入口文件的配置项
        entry:{
            entry:'./src/entry.js',
            //这里我们又引入了一个入口文件
            entry2:'./src/entry2.js'
        },
        //出口文件的配置项
        output:{
            //输出的路径,用了Node语法
            path:path.resolve(__dirname,'dist'),
            //输出的文件名称
            filename:'[name].js'
        },
        //模块:例如解读CSS,图片如何转换,压缩
        module:{},
        //插件,用于生产模版和各项功能
        plugins:[],
        //配置webpack开发服务功能
        devServer:{}
    }
    

    将filename的值修改为[name].js;它的意思是根据入口文件的名称,打包成相同的名称,有几个入口文件,就可以打包出几个出口文件;

    服务和热更新配置

    首先,配置devServer

    devServer:{
        contentBase:path.resolve(__dirname,'dist'),
        host:'localhost',
        compress:true,
        port:1608
    }
    
    • contentBase:服务器基本运行路径
    • host:服务器运行地址
    • compress:服务器压缩式,一般为true
    • port:服务运行端口

    然后,下载webpack-dev-server模块,

    npm install webpack-dev-server --save-dev
    

    最后,配置package.json里的scripts选项

     "scripts": {
        "server": "webpack-dev-server"
    }
    

    运行命令 npm run server ,服务器运行,在浏览器中打开http://localhost:1608,既可以看到页面;

    当 npm run server 启动后,服务器有一种监控机制(watch),可以实现热更新;

    参考地址:

  • 相关阅读:
    auto关键字
    关闭vs的编译警告
    windows C++删除非空文件夹
    vs相同变量高亮显示
    梯度下降算法到logistic回归
    ubuntu 按键替换 Control_R to Left
    git 删除分之以及删除文件夹
    迄今为止计算机视觉领域超有实力的研究人物主页
    DeepLearning——CNN
    利用积分图进行均值滤波
  • 原文地址:https://www.cnblogs.com/hawk-zz/p/7884347.html
Copyright © 2011-2022 走看看