Javascript 为什么赢了';t Webpack是否在更改时刷新我的Angular 1.x应用程序的页面?
我正在尝试将基于Gulp的工作流转换为webpack,但我很难弄清楚如何让livereload功能正常工作(当任何javascript更改时自动刷新)。我的项目是一个Angular 1.5.8应用程序,有一个快速的后端,Javascript 为什么赢了';t Webpack是否在更改时刷新我的Angular 1.x应用程序的页面?,javascript,angularjs,webpack,webpack-dev-server,Javascript,Angularjs,Webpack,Webpack Dev Server,我正在尝试将基于Gulp的工作流转换为webpack,但我很难弄清楚如何让livereload功能正常工作(当任何javascript更改时自动刷新)。我的项目是一个Angular 1.5.8应用程序,有一个快速的后端,jade标记文件被编译成html和stylus(.styl)文件通过我们的构建步骤编译成css。目前,我只是传输javascript并将其捆绑在一起,只是想看看是否可以让该部分正常工作,但我做不到 我应该注意,index.jade不会被我们的构建步骤传输。当用户向我们的后端发出请
jade
标记文件被编译成html和stylus(.styl)
文件通过我们的构建步骤编译成css
。目前,我只是传输javascript并将其捆绑在一起,只是想看看是否可以让该部分正常工作,但我做不到
我应该注意,index.jade
不会被我们的构建步骤传输。当用户向我们的后端发出请求时,index.jade
被编译成html并提供给客户端
我的项目结构如下所示
- bin (compiled/transpiled files)
- js
- index.js(transpiled js)
- templates.js (created for angular's template cache)
- stylesheets ( compiled from stylus to css)
- stylesheet1.css
- stylesheet2.css
- ...
- templates
- random-html-file.html
- ...
- lib
- index.js (this file serves up `index.jade`)
- server
- index.js
- api
- index.js
- client (es6 angular code)
- index.jade
- javascript
- index.js (main entry point)
- restOfAngularStuff
- stylesheets folder
- templates folder (jade)
这就是文件结构(简化)。Express
服务器监听端口3000
并知道如何从/bin
提供内容(服务器从节点路径=./
启动,因此从根目录开始),我可以通过在我的webpack.config.js中设置的这个设置,通过webpack传输javascript:
该文件由我的npm脚本npm run webpack dev
调用,该脚本运行webpack dev server
服务器启动,我的应用程序加载,但当我在lib/client/javascript/index.js
中更改了一些javascript时,页面没有刷新,我似乎不知道为什么。我对Webpack相当陌生,但如果有人需要更多信息来帮助我调试这个问题,我愿意提供尽可能多的信息。我还发布了关于index.jade
如何提供的服务器端代码供参考(lib/index.js
):
谢谢 在devServer
中添加inline:true
,然后检查itI。我尝试了它,但它不起作用。我需要设置代理服务器吗?我还知道WebpackDev服务器将更改保存在内存中,不会写入磁盘。我的理解是,它打开一个套接字并连接到浏览器。如果那个套接字是打开的,它应该在我的浏览器控制台中这样说,对吗(我在示例中看到过)?我好像不明白。我也刚刚意识到,即使我刷新了,也没有任何更改得到应用。我让刷新正常工作(我认为这与我的一些供应商文件被导入但没有正确导出有关),但刷新后没有任何更改得到反映。我认为这与提供的捆绑index.js文件有关,而不是Webpack Dev Server的内存版本的编译javascript有关。在devServer
中添加inline:true
,然后检查itI,我尝试了,但没有成功。我需要设置代理服务器吗?我还知道WebpackDev服务器将更改保存在内存中,不会写入磁盘。我的理解是,它打开一个套接字并连接到浏览器。如果那个套接字是打开的,它应该在我的浏览器控制台中这样说,对吗(我在示例中看到过)?我好像不明白。我也刚刚意识到,即使我刷新了,也没有任何更改得到应用。我让刷新正常工作(我认为这与我的一些供应商文件被导入但没有正确导出有关),但刷新后没有任何更改得到反映。我认为这与提供的捆绑index.js文件有关,而不是Webpack Dev Server的内存版编译javascript。