• 前端实践项目(三)webpack-dev-server的使用


    目录

      该系列的总目录, https://www.cnblogs.com/shadoll/p/14637373.html

    一.说明

      接上一篇 前端实践项目(二)webpack生成html和外部引用 ,已经初步搭建了一个小demo。

      本文会使用webpack-dev-server来创建一个前端服务,并用上它的热加载功能。

    二.安装和配置

      执行命令,安装插件。webpack搭建开发环境服务的插件。

    cnpm install webpack-dev-server@2.11.3 --save-dev

       修改webpack.config.js配置。contentBase为该服务的根目录。port为服务端口。proxy为反向代理设置。

    // 开发服务器,实时重新加载
    devServer: {
        contentBase: './dist',
        port: 8222,
        proxy: {
            "/api": {
                target: 'http://localhost:8005',
                changeOrigin: true
            }
        }
    }

    三.运行服务

      使用的命令是webpack-dev-server,它的尾缀是相关配置。

      --hot是热刷新,--inline是刷新模式。这两个加起来就是实现当你编译代码后,webpack会自动编译并且刷新网页。inline模式是在html嵌套一个js代码来监听是否刷新当前页面。

    <script src="/webpack-dev-server.js"></script>

      --content-base是设置伺服的文件夹,一般将其设置为编译出包的文件夹就好,不设置则默认为根目录下。

      注意:

      如果在webpack.config.js配置了output的publicPath,那在html引用的js路径就需要调整,因为webpack-dev-server伺服的文件是相对publicPath这个路径的。我这里的配置是如下,实际编译在html的js引用路径也是“/”前缀,引用没有问题。

    //入口文件输出配置
    output: {
        path: __dirname + '/dist',
        filename: 'js/[name].js',
        publicPath: '/'
    },

      同时,使用webpack-dev-server后,在目标文件夹中是看不到编译后的文件的,因为它是将实时编译的文件存放在内存中。

      执行命令,在浏览器打开localhost:8222,便可以看到编译后的项目了。

    webpack-dev-server --hot --inline --content-base ./dist

      

  • 相关阅读:
    linux加载和卸载模块
    java 面试题之银行业务系统
    java 面试题之交通灯管理系统
    java 实现类似spring的可配置的AOP框架
    分析JVM动态生成的类
    最长上升子序列(模板)
    项目管理模式
    让thinkphp 支持ftp上传到远程,ftp删除
    hdu 1280 前m大的数 哈希
    互联网+脑科学,中国脑计划的机会
  • 原文地址:https://www.cnblogs.com/shadoll/p/14631023.html
Copyright © 2020-2023  润新知