为什么angular-cli会为某些捆绑文件生成index.html而不是javascript - main和inline?

时间:2017-12-04 13:45:28

标签: angular angular-cli

运行 ng build --prod -aot 时,我通过Chrome控制台发现,某种方式的angular-cli正在为以下2个文件生成HTML而不是javascript: {strong} inline.ef2cca55df62b04c3a6e.bundle.js 会导致此错误: main.f6759214c702206e325d.bundle.js ,当您尝试在浏览器上调用该应用时。

错误有意义,因为HTML以Uncaught SyntaxError: Unexpected token < polyfills.ad37cd45a71cb38eee76.bundle.js:1 Uncaught ReferenceError: webpackJsonp is not defined at polyfills.ad37cd45a71cb38eee76.bundle.js:1开头。

另外,当我查看Chrome /网络时,我会看到 <!docytpe html>

Content-Type:text/html

一件重要的事情是该应用在Request URL:http://localhost:9898/main.f6759214c702206e325d.bundle.js Request Method:GET Status Code:200 OK Remote Address:[::1]:9898 Referrer Policy:no-referrer-when-downgrade Response Headers view source Accept-Ranges:bytes Connection:keep-alive Content-Length:598 Content-Type:text/html Date:Mon, 04 Dec 2017 12:45:38 GMT ETag:"5a2541be-256" Last-Modified:Mon, 04 Dec 2017 12:38:22 GMT Server:nginx/1.13.7 下包含2个子文件夹,用于翻译:{{1​​}}和/dist我生成了相同的所需文件/包。

所以我最后有:

/en

当我首先在例如/es下调用该应用时,它会加载文件以及正确的内容和路由器:/dist /en styles.xxxxxxxxxxx.css inline.xxxxxxxxxxx.js main.xxxxxxxxxxxxx.js polyfills.xxxxxxxx.js /es styles.xxxxxxxxxxx.css inline.xxxxxxxxxxx.js main.xxxxxxxxxxxxx.js polyfills.xxxxxxxx.js styles.xxxxxxxxxxx.css inline.xxxxxxxxxxx.js main.xxxxxxxxxxxxx.js polyfills.xxxxxxxx.js` ,但是当我尝试投放到不同的语言时,例如http:localhost:9090/或者http:localhost:9090/home,然后它不起作用并抛出:http:localhost:9090/en main.xxxxx.js http:localhost:9090/es inline.xxxxxxx.js`包含真正的HTML标记,而不是JavaScript

1 个答案:

答案 0 :(得分:0)

我有同样的问题,我认为这与路由有关。 因为当我重写url时,同一页面在iis上工作正常。 在apache它失败了。 所以我的假设是我的apache路由是错误的,因为我不是apache专家 希望提示有帮助