加载我的应用程序时,我得到了WSOD,打开控制台显示两个JS文件的错误:
uncaught SyntaxError: Unexpected token < vendor.js
uncaught SyntaxError: Unexpected token < myapp.js
查看Chromes devtools中的文件vendor.js和myapp.js的内容,它们的内容是dist/index.html
文件的内容,因此它们不是实际的javascript文件(即{{1} }和dist/assets/vendor.js
)。
我构建ember应用程序的唯一方法是运行命令dist/assets/myapp.js
,在devtools中查看html文件的原因是什么,是浏览器看到的JS文件的实际内容?
我正在使用nginx并检查它是否包含/etc/nginx/mime.types,因此不确定问题出在哪里
答案 0 :(得分:0)
您可能已将网络服务器nginx配置为始终发送index.html
的内容。由于余烬路由器,这是必要的。
如果您访问http://example.com/myroute
,则希望将index.html
发送到浏览器,然后让ember路由器呈现myroute
路由的内容。
可能你已经配置了这个错误,所以nginx总是总是发送index.html
,每个请求,这是不正确的。如果请求的文件不存在,它应该只发送index.html
。
我希望这会引导你走向正确的方向。这不是一个余烬问题,只是nginx配置。
答案 1 :(得分:0)
我遇到了同样的问题,但发现当我将Ember CLI locationType
中的config/environment.js
选项从'auto'
转为'hash'
时我的网页正确加载对我的服务器配置的任何更改。