示例webpack angular4应用程序抛出错误

时间:2017-04-12 06:17:26

标签: angular angular2-webpack-starter angular4.x

我正在尝试创建https://angular.io/docs/ts/latest/guide/webpack.html中设置的示例angular-webpack应用程序,但它给我带来了大约26个错误。即使将打字稿版本更改为“~2.2.1”,这些错误也随之而来。

有人可以帮我解决这些错误吗?

[at-loader] Checking finished with 26 errors                                                                        chunk    {0} vendor.js
(vendor) 2.64 MB {2} [initial] [rendered]
chunk    {1} app.js, app.css (app) 3.57 kB {0} [initial] [rendered]
chunk    {2} polyfills.js (polyfills) 577 kB [entry] [rendered]

WARNING in ./~/@angular/core/@angular/core.es5.js
5870:15-36 Critical dependency: the request of a dependency is an expression

WARNING in ./~/@angular/core/@angular/core.es5.js
5886:15-102 Critical dependency: the request of a dependency is an expression

ERROR in [at-loader] ./node_modules/@angular/common/src/platform_id.d.ts:8:42
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/common/src/platform_id.d.ts:9:41
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/common/src/platform_id.d.ts:10:45
    TS1039: Initializers are not allowed in ambient contexts.
ERROR in [at-loader] ./node_modules/@angular/common/src/platform_id.d.ts:11:44
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/compiler/src/util.d.ts:8:36
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/animation/animation_metadata_wrapped.d.ts:12:33
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/animation/dsl.d.ts:34:33
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/errors.d.ts:9:33
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/errors.d.ts:10:43
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/errors.d.ts:11:42
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/src/errors.d.ts:12:43
    TS1039: Initializers are not allowed in ambient contexts.
ERROR in [at-loader] ./node_modules/@angular/core/src/errors.d.ts:13:35
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/core/testing/src/before_each.d.ts:1:59
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/http/src/backends/browser_jsonp.d.ts:1:33
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/platform-browser/src/dom/dom_renderer.d.ts:14:41
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./node_modules/@angular/router/src/shared.d.ts:15:37
    TS1039: Initializers are not allowed in ambient contexts.

ERROR in [at-loader] ./src/app/app.component.spec.ts:3:1
    TS2304: Cannot find name 'describe'.

ERROR in [at-loader] ./src/app/app.component.spec.ts:4:3
    TS2304: Cannot find name 'beforeEach'.

ERROR in [at-loader] ./src/app/app.component.spec.ts:7:3
    TS2304: Cannot find name 'it'.

ERROR in [at-loader] ./src/app/app.component.spec.ts:9:5
    TS2304: Cannot find name 'expect'.

ERROR in [at-loader] ./src/app/app.component.ts:5:13
    TS2304: Cannot find name 'require'.

ERROR in [at-loader] ./src/app/app.component.ts:6:12
    TS2304: Cannot find name 'require'.

ERROR in [at-loader] ./src/main.ts:4:5
    TS2304: Cannot find name 'process'.

ERROR in [at-loader] ./src/polyfills.ts:3:1
    TS2304: Cannot find name 'require'.

ERROR in [at-loader] ./src/polyfills.ts:5:5
    TS2304: Cannot find name 'process'.

ERROR in [at-loader] ./src/polyfills.ts:10:3
    TS2304: Cannot find name 'require'.
Child html-webpack-plugin for "index.html":
    chunk    {0} index.html 325 bytes [entry] [rendered]
Child extract-text-webpack-plugin:
    chunk    {0} extract-text-webpack-plugin-output-filename 1.92 kB [entry] [rendered]
webpack: Failed to compile.

4 个答案:

答案 0 :(得分:5)

如上所述,TSXXX错误似乎与使用2.1版之前的TypeScript有关 例如herehere

请确认:

  • 在package.json文件中声明的TypeScript版本(“typescript”:“~2.2.1”就行了)
  • 您有效用于编译项目的TypeScript版本。您可以从npm start命令的输出验证。你应该看到像[at-loader] Using typescript@2.0.10 from typescript and "tsconfig.json" from /usr/src/ng2-projects/angular-webpack/src/tsconfig.json这样的东西; typescript@部分将显示用于编译的版本。

TS2304错误似乎与所需类型声明的错误配置有关。有关如何配置它们的详细说明,请参阅here

答案 1 :(得分:1)

我也遇到了这个问题..花了2天后,在一些帮助下,我能够让它发挥作用。实际上我不能完全赞成修复,其他人确实提供了很多帮助。

  1. 检查系统上安装的打字稿版本。
  2. 比较package.json中的版本。
  3. 我不记得我是否更新了打字稿,但当时它是2.2.2所以我更新了package.json以反映我系统上安装的版本。

    为我工作。

答案 2 :(得分:1)

也许它会帮助某人: 关于打字稿我有很多不同的错误。我将我的tsconfig.json移动到根文件夹,错误消失了。

答案 3 :(得分:0)

我有同样的问题。我改为打字稿2.3(“typescript”:“〜2.3”在package.json中),现在我不再收到错误了。