我正在尝试从Angular 2 ROUTING & NAVIGATION docs获取样本。 它在the example plunker上运行正常,但如果您下载代码并直接在quickstart项目中使用该应用程序,则无法运行。 “正在加载...”消息永远不会消失,并且控制台最初没有错误。过了一会儿,这些错误就出现了:
service-worker.js:1 A bad HTTP response code (404) was received when fetching the script.
http://localhost:3000/service-worker.js Failed to load resource: net::ERR_INVALID_RESPONSE
该应用程序提供了一个很好的示例,由于它具有所有这些优秀的文档,我想将其作为进一步工作的起点。
“英雄之旅”应用程序的示例有各种看似断开的表现形式 这个版本似乎是最成熟和最完整的。能够在本地运行它会很好。
您可以通过克隆快速入门,下载plunker并使用来自plunker的快速入门替换app文件夹来重现错误。
在执行npm start之前,您还需要运行npm install。
我还在systemjs.config.js文件中将main.js更改为app.module.js,如下所示:
packages: {
app: {
main: './app.module.js',
任何帮助都将不胜感激。
编辑:我接受了@ andrew554的建议并添加了索引,但问题仍然存在。
答案 0 :(得分:0)
您需要设置base,后面提到了here:
实时示例注释
当我们运行实例时,我们必须变得棘手,因为主机 service动态设置应用程序基址。这就是我们的原因 用写入标记的脚本替换 苍蝇匹配。
<script>document.write('<base href="' + document.location + '" />');</script>
对于实例,我们应该只需要这个技巧 不是生产代码。
<!DOCTYPE html>
<html>
<head>
<!-- Set the base href -->
<script>document.write('<base href="' + document.location + '" />');</script>
只需将<script> ...
替换为<base href="/">