webpack---less+热更新 使用

  最近尝试用less写界面,webpack进行打包,然后发现每次修改less时都需要重新执行webpack打包一下,于是就想到了webpack热更新这个功能。

一、使用less

  less是一门css预处理语言,它是拓展了css,增加了变量,Mixin等等。使用less需要安装less服务,less-loader用来打包时用,想要将less正确解析成css当然还需要style-loader和css-loader。loader是webpack重要的功能之一,通过使用不同的loader,webpack可以使用外部脚本或工具处理不同格式类型的文件,如通过less-loader处".less"文件。

首先安装:

npm install less --save-dev
npm install style-loader css-loader less-loader --save-dev

webpack.config.js配置:

    module: {
        rules: [{
            test: /\.less$/,
            use: [‘style-loader‘, ‘css-loader‘, ‘less-loader‘]
        }]
    }

然后将.less文件加载到入口文件里,如在入口文件里import ‘../less/topHead.less‘;这样就可以执行webpack把.less文件进行打包了。

二、webpack-dev-server热更新

  使用热更新,当每次修改完代码保存后,不用手动的执行webpack打包命令,界面会自动更新。

  要执行webpack-dev-server是要先用npm install webpack-dev-server –save-dev 来进行下载的。下载好后,需要在webpack.config.js中配置一下devServer。

   devServer:{
        //设置基本目录结构
        contentBase:path.resolve(__dirname,‘dist‘),
        //服务器的IP地址,可以使用IP也可以使用localhost
        host:‘localhost‘,
        //服务端压缩是否开启
        compress:true,
        //配置服务端口号
        port:8090
    }
  • contentBase:配置服务器基本运行路径,用于找到程序打包地址。你的程序打包的出口目录是什么,就将“dist”换成什么
  • host:服务运行地址,这里使用本机IP,localhost。
  • compress:服务器端压缩选型,一般设置为开启。
  • port:服务运行端口,建议不使用80,很容易被占用,这里使用了8090.

最后在packege.json里的scripts里定义一下命令

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

然后就可以执行npm server启动热更新服务了。当每次修改代码后就不用手动webpack打包了,只需要保存修改的文件即可。(注意:修改HTML时需要手动在浏览器中刷新)

原文地址:https://www.cnblogs.com/chen-cong/p/8323958.html

时间: 2024-10-09 21:54:20

webpack---less+热更新 使用的相关文章

使用IntelliJ IDEA过程中webpack无法热更新

最近发现一个问题,就是在使用IntelliJ 的过程中发现webpack的热更新失效,也在网上找过很多的修改webpack.config.js配置文件的方法,但是都没有生效,看着同事们一个一个在愉(tong)快(ku)的撸代码,我怎么能忍!? 后来,经过不断的尝试,更换IDE,发现其实就是IDE的问题.如果你是按照官网上的方式进行安装的webpack,但是还是无法进行热更新,那么下图就是你的福音啦. Setting ---> Appearance & Behavior ---> Sys

webpack设置热更新

首先需要在package.json中配置一个脚本参数 --hot "dev": "webpack-dev-server --mode development --hot" 运行项目 npm run dev 在入口文件还要增加这样的代码 if (module.hot) { module.hot.accept() } 如果不想通过脚本参数设置热更新的话,还可以在webpack配置里面配置 plugins: [ new HtmlWebpackPlugin({ templa

webpack添加热更新

之前的wbepack一直没有加上热更新,这是一种遗憾,今天终于加上去了,看不懂我博客的可以看这篇文章:http://blog.csdn.net/hyy1115/article/details/53022047?locationNum=1&fps=1 项目地址:http://pan.baidu.com/s/1c1Dfv0G 1:安装热更新插件:npm i --save-dev webpack-dev-middleware webpack-hot-middleware 2:在package.json

关于webpack下热更新?&自动刷新?的小记(非vue-cli)

写本随笔时:webpack4.6.0 为何标题用?号,因为老衲也不知是否用词正确,大概是这样的说法: webpack4.0引入生产模式和开发模式,在开发时使用 webpack 打包后不压缩,所以只需要在 webpack 打包命令中加上 --mode mode development 即可. 如果没有 mode development 就会自动使用 production 模式,所有打包的代码将会是压缩过的,没办法调试 实践: index.html引入的bundle.js文件,必需是webpack-

webpack-dev-middleware 和 webpack-hot-middleware 实现express全栈热更新。

场景: node server.js 启动后端服务器. npm run dev 启动前端服务器. 当你需要node的express框架和webpack结合的时候,就会用到题上的两个依赖. 当然如果只是想用node启动webpack实现热更新,那么webpack-dev-server,就可以实现!详情见:https://segmentfault.com/a/1190000007374078: 这样出现的问题就是你在页面中找不到你写的API,出现404错误(因为事实上你是没有启动你的后端服务器) 这

Webpack热更新原理

开发环境页面热更新早已是主流,常见的需求如赛事网页推送比赛结果.网页实时展示投票或点赞数据.在线评论或弹幕.在线聊天室等,都需要借助热更新功能,才能达到实时的端对端的极致体验. webpack-hot-middleware webpack-hot-middleware中间件是webpack的一个plugin,通常结合webpack-dev-middleware一起使用.借助它可以实现浏览器的无刷新更新(热更新),即webpack里的HMR(Hot Module Replacement).如何配置

webpack热更新问题和antd design字体图标库扩展

附一张上周末参加jsconf的照片..... 标题也不知道怎么写好,真是尴尬.不过话说回来,距离上一次写文快两个月了,最近有点忙,一直在开发新项目, 今天刚刚闲下来,项目准备提测.借这个功夫写点东西,把新项目上学到的一些好的干活分享一下,以便之后开发的 时候能烂熟于心. 本次分享两个干货,正文从这里开始: 1.很多同学在开发项目前端项目的时候会遇到一个比较影响开发体验的事情,就是在更新样式文件的时候,页面不会热更新.当然前提是在webpack配置项里用了 'extract-text-webpac

webpack热更新

文件地址:https://pan.baidu.com/s/1kUOwFkV 从昨天下午到今天上午搞了大半天终于把热更新搞好了,之前热更新有两个问题,第一个是不能保存表单状态.第二个是更新太慢,这次主要是针对这两个进行了优化. 主要更改如下 1:在开发配置文件里面的webpack插件里面加入一个插件:HotModuleReplacementPlugin 2:开发配置文件里面的之前自己写的那个动态引入js的插件现在不用了 3:加了系统判断,这样就不用每次切换系统都要修改配置文件了 4:dev-ser

Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(下篇——多页面VueSSR+热更新Server)

Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(下篇--多页面VueSSR+热更新Server) @(HTML/JS) 这是Vue多页面框架系列文章的第二篇,上一篇(纯前端Vue多页面)中,我们尝试从webpack-simple原型项目改造为一个多页面的Vue项目.而这里,我们继续往前,尝试把Vue多页面改造为Nodejs直出.由于步骤较多,所以本文片幅较长. 本文源代码:https://github.com/kenkozheng/HTML5_research/tr

webapck 插件HtmlWebpackPlugin的使用以及webpack 热更新;

下面是案例目录: wepack.config.js部分选项; 说一说webpack-html-plugin的用处;他就是一个html文件生成器; title是生成的html文件中的title标题; template是模板,意思是根据哪个.html文件来生成; inject是生成html文件的时候要不要把模板中的的html引入的js也一起带进去;默认是true的; data是自定义的属性,在页面中也可以取到; nimify是压缩,也没什么;它当中有两个选项,去掉注释去掉空行,当然还有其他的选项;