当前位置: 首页 > 知识库问答 >
问题:

Typescript:未捕获的语法错误:意外标记

郎长卿
2023-03-14

我正在尝试用Typescript和ASP.NET内核设置Angular2。以下是package.json:

{
  "name": "testappuit",
  "version": "1.0.0",
  "license": "ISC",
  "dependencies": {
    "@angular/common": "2.0.0-rc.6",
    "@angular/compiler": "2.0.0-rc.6",
    "@angular/compiler-cli": "0.6.0",
    "@angular/core": "2.0.0-rc.6",
    "@angular/forms": "2.0.0-rc.6",
    "@angular/http": "2.0.0-rc.6",
    "@angular/platform-browser": "2.0.0-rc.6",
    "@angular/platform-browser-dynamic": "2.0.0-rc.6",
    "@angular/router": "3.0.0-rc.2",
    "@angular/upgrade": "2.0.0-rc.6",
    "core-js": "^2.4.1",
    "reflect-metadata": "^0.1.3",
    "rxjs": "5.0.0-beta.11",
    "systemjs": "0.19.27",
    "zone.js": "^0.6.17",
    "bootstrap": "^3.3.6"
  },
  "devDependencies": {
    "typescript": "^1.8.10",
    "typings":"^1.3.2"
  }
}

和tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "sourceMap": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": false,
    "outDir": "../wwwroot/app"
  },
  "exclude": [
    "node_modules",
    "wwwroot"
  ]
}

和SystemJs.Config.js

(function (global) {
    System.config({
        paths: {
            'npm:': 'node_modules/'
        },
        map: {
            app: 'app',
            '@angular/core': 'npm:@angular/core/bundles/core.umd.js',
            '@angular/common': 'npm:@angular/common/bundles/common.umd.js',
            '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
            '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
            '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
            '@angular/http': 'npm:@angular/http/bundles/http.umd.js',
            '@angular/router': 'npm:@angular/router/bundles/router.umd.js',
            '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
            'rxjs': 'npm:rxjs',
            'angular2-in-memory-web-api': 'npm:angular2-in-memory-web-api',
        },
    packages: {
                app: {
                    main: './main.js',
                    defaultExtension: 'js'
                },
                rxjs: {
                    defaultExtension: 'js'
                },
                'angular2-in-memory-web-api': {
                    main: './index.js',
                    defaultExtension: 'js'
                }
            }
        });
    })(this);

和app.component.ts:

import { Component } from '@angular/core';
@Component({
    selector: 'my-app',
    template: '<h1>My First Angular 2 App</h1>'
})
export class AppComponent { }
import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent }   from './app.component';
@NgModule({
    imports: [BrowserModule],
    declarations: [AppComponent],
    bootstrap: [AppComponent]
})
export class AppModule { }
/// <reference path="../../typings/globals/core-js/index.d.ts" />
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
const platform = platformBrowserDynamic();
platform.bootstrapModule(AppModule);
<html>
<head>
    <title>Angular 2 QuickStart</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="styles.css">
    <!-- 1. Load libraries -->
    <!-- Polyfill(s) for older browsers -->
    <script src="node_modules/core-js/client/shim.min.js"></script>
    <script src="node_modules/zone.js/dist/zone.js"></script>
    <script src="node_modules/reflect-metadata/Reflect.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>
    <!-- 2. Configure SystemJS -->
    <script src="systemjs.config.js"></script>
    <script>
      System.import('app/main').catch(function(err){ console.error(err); });
    </script>
</head>
<!-- 3. Display the application -->
<body>
    <my-app>Loading...</my-app>
</body>
</html>

帮我想出解决办法。

共有1个答案

荆哲
2023-03-14

我认为这是因为SystemJs.config.js不在项目的根,尝试用package.json将其移到根。或者尝试在index.html中直接映射到它。

<script src="app/systemjs.config.js"></script>

<script src="wwwroot/app/systemjs.config.js"></script>

你甚至可能还想添加更高的级别。还建议将index.html放在项目的根目录中。如果在运行应用程序时没有看到

Loading...

另一个问题可能是您的项目找不到'app',因此尝试在Systemjs.config.js中映射出来

map: {
        app: 'src/testappUI/wwwroot/app',
 类似资料:
  • 我正在尝试开始在ReactJS中创建一个站点。然而,当我试图将我的JS放在一个单独的文件中时,我开始遇到这样的错误:“uncaughtSyntaxerror:uncontractedtoken” 我尝试添加添加到JS文件的顶部,但它没有修复任何问题。下面是HTML和JS文件。有没有关于出了什么问题的想法? HTML JS 编辑:我意识到我需要将添加到包含着陆器代码的脚本标记中。然而,在添加这个并重

  • 当我在chrome中运行我的页面时,我得到了这个错误“uncaughtsyntaxerrorunexpectedtokenu”。在firefox中,我得到了“JSON.parse:意外字符”。我从一个php文件返回json数据,返回的json字符串是有效的。我和你核对过了http://jsonlint.com/.任何帮助都将不胜感激。。。谢谢 下面是返回的JSON字符串

  • 我正在尝试使用React创建一个简单的网站,但由于某些原因,它只显示一个空白页面。 显示在控制台日志上的错误是未捕获的语法错误:意外令牌 非常感谢。 HTML: 主JS: Navbar: 身体

  • 这是我的ajax代码: json是这样的:

  • 我正在为一个班级做一个应用程序,教授和我一样困惑为什么它不起作用。我有2个js文件和一个html。我将一个数组从一个js导出到另一个,然后在我的html中使用那个js作为src。以下是相关代码: 医疗名单。js: main.js: HTML: 下面是我得到的错误: main.js: 1未捕获的语法错误:意外令牌{ 我尝试在脚本标记中使用type="模块",但是当我尝试使用main.js中声明的函数

  • 对于个人项目,我试图使用ES6导入来编写更干净的代码。作为第一个测试,我正在编写一个应该生成菜单的对象。当我直接加载类时,整个代码都在工作,但是当在ES6中使用导入和导出时,它在中的行上给出了一个“未捕获的同步错误:意外标识符”错误 我有以下文件: assets/js/menu。单元js assets/js/main。js index.html 请注意,这些只是相关的代码行。 使用