【问题标题】:Use of const in strict mode (Angular 2)在严格模式下使用 const (Angular 2)
【发布时间】:2017-12-20 14:53:28
【问题描述】:

我的node版本是v9.3.0,npm版本是5.5.1。 我正在尝试使用以下方法创建和运行示例项目:

ng new test;
ng serve -o;

angular cli 编译程序成功,但我的浏览器页面为空白,控制台日志结果为:

未捕获的 SyntaxError:在严格模式下使用 const。

首先,我怎样才能避免这个错误? 在这种情况下如何启用严格模式?

编辑:

{
  "compileOnSave": false,
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

【问题讨论】:

  • 哪个浏览器?你的 tsconfig 是什么样子的,编译目标是什么?
  • @Zlakto 我的浏览器是chrome,编译目标是es5。我应该使用 tsconfig 文件编辑我的问题还是查找任何特定选项?
  • @Zlakto 用 tsconfig 文件编辑了我的问题。
  • 推荐stackoverflow.com/questions/22603078/…它可能对你有帮助
  • @atishshimpi 这是我最初提到但没有用的地方。我正在使用最新版本的 node.js

标签: node.js angular typescript


【解决方案1】:

在下面的 GitHub 讨论中解决了类似的问题 Link

以下是问题的处理方式,尝试这样做可能会帮助您解决问题。

如果您在更新之前有一个工作版本,请转到该安装并使用:

npm shrinkwrap 
or npm shrinkwrap --dev

然后将创建一个新文件

npm-shrinkwrap.json

检查该文件并确保已创建依赖项。通常,此文件具有所有现有的依赖项。将该文件放在运行 npm install 的文件夹中。 NPM 将使用旧版本并且应该可以工作。

作为替代方案,您可以删除所有不相关的依赖项并仅保留具有请求依赖项的 node-sass。

        "node-sass": {
        "version": "2.1.1",
        "from": "node-sass@>=2.0.1 <3.0.0",
        "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-2.1.1.tgz",
        "dependencies": {
          "request": {
            "version": "2.79.0",
            "from": "request@>=2.53.0 <3.0.0",
            "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
          },
        }
      },

【讨论】:

    猜你喜欢
    • 2016-08-15
    • 2014-05-01
    • 2019-01-31
    • 2019-07-15
    • 2018-10-10
    • 2017-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多