Uncaught SyntaxError: Unexpected token <
每当我尝试运行angular2应用程序时,我都会收到此错误.这只是基于angular2网站的路由"教程"的修改.
通常这些错误说明了我错误编写了一段代码.但是Chrome控制台告诉我在angular2 js文件中发生了错误.
阅读并试图从两者的答案Chrome Uncaught Syntax Error: Unexpected Token ILLEGAL
,并warning C4819: How to find the character that has to be saved in unicode?
没有工作.猜测错误必须在我的boot.ts或app.component.ts中.
boot.ts
import {bootstrap} from 'angular2/platform/browser'; import {ROUTER_PROVIDERS} from 'angular2/router'; import {AppComponent} from './app.component'; import {HallService} from './hall/hall.service'; bootstrap(AppComponent,[ ROUTER_PROVIDERS, HallService ]);
app.component.ts
import {Component} from 'angular2/core'; import {RouteConfig, ROUTER_DIRECTIVES} from 'angular2/router'; import {HallCenterComponent} from './hall/hall-center.component'; @Component({ selector: 'my-app', template: `Component Router
Hallen Heroes`, directives: [ROUTER_DIRECTIVES] }) @RouteConfig([ { path: '/hall/...', name: 'HallCenter', component: HallCenterComponent, useAsDefault: true } ]) export class AppComponent { }
的index.html
Factory project loading...
霍尔center.component.ts
import {Component} from 'angular2/core'; import {RouteConfig, RouterOutlet} from 'angular2/router'; import {HallListComponent} from './hall-list.component'; import {HallDetailComponent} from './hall-detail.component'; import {HallService} from './hall.service'; @Component({ template: `HALL CENTER
`, directives: [RouterOutlet], providers: [HallService] }) @RouteConfig([ {path:'/', name: 'HallCenter', component: HallListComponent, useAsDefault: true}, {path:'/:id', name: 'HallDetail', component: HallDetailComponent}, {path:'/list/:id', name: 'HallList', component: HallListComponent} ]) export class HallCenterComponent { }
小智.. 22
所以上面的答案似乎是正确的,但这里是有关该错误本身(只是为别人谁遇到同样的问题,不知道他们做了什么错误)的一些信息,因为它可以从字面上似乎每个单独的进口,是相当难以追查.
每当需要文件并且Web服务器配置为仅提供/
而不是a 时,它就会出现404-file-not-found-page
.
/
通常然后转换为/index.html
第一个字符通常是<
(通常是开头)并且由于这不是有效的javascript,浏览器会抛出非法令牌异常.
所以上面的答案似乎是正确的,但这里是有关该错误本身(只是为别人谁遇到同样的问题,不知道他们做了什么错误)的一些信息,因为它可以从字面上似乎每个单独的进口,是相当难以追查.
每当需要文件并且Web服务器配置为仅提供/
而不是a 时,它就会出现404-file-not-found-page
.
/
通常然后转换为/index.html
第一个字符通常是<
(通常是开头)并且由于这不是有效的javascript,浏览器会抛出非法令牌异常.
你有几个问题:
你的组件选择器是:'my-app'
Loading...
应该
Loading...
此外,您导入错误的文件:
System.import('app/app');
应该
System.import('app/boot');
此外,除非您要将您的打字稿编译为java脚本..您应该更改此行并导入typescript.js
{defaultExtension: 'js'}}
应该
{defaultExtension: 'ts'}}
此外,您缺少一些导入:
这里是一个plunker你的代码的工作