使用webpack-dev-server和HMR
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 5.2,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
使用webpack-dev-server和HMR
在开发时,而不是使用时纱线返场开发——看
,你可以使用webpack-dev-server:
1
$Yarn encore dev-server
这将从一个新的服务器构建和服务前端资产。这个服务器运行在localhost: 8080
默认情况下,这意味着您的构建资产在localhost: 8080 /构建
.该服务器并不实际将文件写入磁盘;相反,它从内存中提供服务,允许热模块重新加载。
结果,链接
而且脚本
标记需要指向新服务器。如果你在用encore_entry_script_tags ()
而且encore_entry_link_tags ()
树枝捷径(或通过entrypoints.json处理资产以其他方式),您就完成了:模板中的路径将自动指向开发服务器。
dev-server选项
谨慎
安可使用webpack-dev-server
版本4,在Encore 1.0发布时,它仍处于测试阶段,没有文档记录。看到4.0更新日志的变化。
的dev-server
命令支持定义的所有选项webpack-dev-server.你可以通过命令行选项设置这些选项:
1
$Yarn encore -server—port 9000
属性设置这些选项Encore.configureDevServerOptions ()
方法。webpack.config.js
文件:
12 3 4 5 6 7 8 9 10 11 12 13
/ / webpack.config.js/ /……再来一个/ /…….configureDevServerOptions (选项= >{选项。HTTPS = {关键:“/道路/ / server.key”,cert:“/道路/ / server.crt”,}});
0.28.4
的Encore.configureDevServerOptions ()
方法在Encore 0.28.4中引入。
使用Symfony Web Server启用HTTob娱乐下载PS
如果你在用ob娱乐下载Symfony web服务器在本地使用HTTPS时,您还需要告诉dev-server使用HTTPS。要做到这一点,您可以重用Symfony web服务器SSL证ob娱乐下载书:
12 3 4 5 6 7 8 9 10 11 12
// webpack.config.js //…+ const path = require('path');Encore //…+ .configureDevServerOptions(options => {+选项。HTTPS = {+ pfx: path.join(process.env。家,“.symfob娱乐下载ony /证书/ default.p12”),+}+})
谨慎
一定要不通过——https
运行时在命令行上标记安可dev-server
.这个标志在1.0之前是必需的,但是现在会导致你的配置被覆盖。
歌珥问题
如果您遇到与CORS(跨源资源共享)相关的问题,请设置以下选项:
1 2 3 4 5 6 7 8 9 10 11
/ / webpack.config.js/ /……再来一个/ /…….configureDevServerOptions (选项= >{选项。allowedHosts =“所有”;//在旧的Webpack Dev Server版本中,使用此选项:/ /选项。防火墙= false;})
请注意,这通常不是推荐的安全实践,但在这里需要解决CORS问题。