Vue--webpack实时重新加载

简介: Vue--webpack实时重新加载

前戏


每一次手动打包很麻烦,打包后还需要手动刷新浏览器。

采用 webpack 提供的工具: webpack-dev-server ,它允许在运行时更新所有类型的模块后,而无需手动打包和刷新页面,会自动打包和刷新页面。可以很大程度提高开发效率。

参考:https://webpack.docschina.org/guides/development/#使用-webpack-dev-server

安装

在当前项目下安装

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

修改  webpack.config.js 配置

// 引入node中的path模块,处理文件路径 的小工具
const path = require('path')
// 引入插件
const HtmlWebpackPlugin = require('html-webpack-plugin');
// 导出一个webpack具有特殊属性配置的对象
module.exports = {
    mode: 'none', // 指定模式配置:"development" | "production" | "none"
    // 入口
    entry: './src/main.js', // 入口模块文件路径 
    // 出口
    output: {
        // path: './dist/', 错误的,要指定绝对路径
        path: path.join(__dirname, './dist/'), //打包的结果文件生成的目录要是绝对路径
        filename: 'bundle.js'
    },
    // 配置插件
    plugins: [
        new HtmlWebpackPlugin({
            // 指定要打包的模板页面
            // 就会将 index.html 打包到与 bundle.js 所在同一目录下面,
            // 同时在 index.html 中会自动的使用script 标签引入bundle.js
            template: './index.html'
        })
    ],
    // 实时重新加载
    devServer: {
        // 目标路径
        contentBase: './dist'
    },
    module: {
        rules: [ //配置转换规则
            {
                test: /\.css$/, // 注意,不要有单引号,正则表达 式,匹配 .css 文件资源 
                use: [
                    // 根据外国人的习惯来的顺序,而且顺序不要写错
                    'style-loader', // js识别css
                    'css-loader' // css 转换为 js
                ]
            },
            {
                test: /\.(png|svg|jpg|gif)$/,
                use: [
                    'file-loader'
                ]
            },
        ]
    }
}

修改  package.json 的  scripts

{
  "name": "webpack-demo2",
  "version": "1.0.0",
  "description": "",
  "main": "webpack.config.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "show": "webpack -v",
    "start": "node ./src/main.js",
    "build": "webpack",
    "watch": "webpack --watch",
    "dev": "webpack-dev-server --open"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "css-loader": "^3.2.0",
    "file-loader": "^4.2.0",
    "html-webpack-plugin": "^3.2.0",
    "style-loader": "^1.0.0",
    "webpack": "^4.35.2",
    "webpack-cli": "^3.3.6",
    "webpack-dev-server": "^3.8.2"
  }
}

在之前的基础上加上"dev": "webpack-dev-server --open"

--open 选项打包成功,自动打开浏览器

打包

npm run dev

测试,修改 style.css, 会自动打包且浏览器会自动刷新, 如下注释掉图片,就只有背景色了


相关文章
|
1月前
|
前端开发 JavaScript 数据可视化
Webpack加载器和插件之间有什么区别
【10月更文挑战第13天】Webpack加载器和插件之间有什么区别
|
资源调度 JavaScript
Vue npm yarn webpack 遇到无法加载文件禁止运行脚本解决方案
Vue npm yarn webpack 遇到无法加载文件禁止运行脚本解决方案
159 0
Vue npm yarn webpack 遇到无法加载文件禁止运行脚本解决方案
|
缓存 JavaScript 前端开发
webpack5资源最佳加载方案
在前面几篇文章中,我们已经学会基础的运用webpack与webpack-cli从0到1搭建一个简单的react或者vue工程应用,这其中我们使用了加载文件,我们在之前处理文件使用file-loader或者url-loader处理,url-loader主要是可以针对图片文件大小进行有选择的base64压缩,在webpack5中可以用内置的Asset Modules来处理图片资源
200 0
webpack5资源最佳加载方案
|
前端开发 JavaScript 数据格式
使用webpack loader加载器
了解webpack请移步webpack初识! 什么是loader loaders 用于转换应用程序的资源文件,他们是运行在nodejs下的函数 使用参数来获取一个资源的来源并且返回一个新的来源(资源的位置),例如:你可以使用loader来告诉webpack去加载一个coffeescript或者j...
1015 0
|
2月前
|
JavaScript
webpack打包TS
webpack打包TS
134 60
|
1月前
|
缓存 前端开发 JavaScript
Webpack 打包的基本原理
【10月更文挑战第5天】
|
1月前
|
前端开发 JavaScript
ES6模块化和webpack打包
【10月更文挑战第5天】
|
1月前
|
缓存 前端开发 JavaScript
深入了解Webpack:模块打包的革命
【10月更文挑战第11天】深入了解Webpack:模块打包的革命
下一篇
无影云桌面