【问题标题】:AspNetCore + Angular 2: WebpackDevMiddleware Error with new projectAspNetCore + Angular 2:新项目的 WebpackDevMiddleware 错误
【发布时间】:2017-04-18 12:50:57
【问题描述】:

我正在使用本教程创建一个新项目:

https://blogs.msdn.microsoft.com/webdev/2017/02/14/building-single-page-applications-on-asp-net-core-with-javascriptservices/

接下来是一些已解决的问题,我现在已经安装了所有依赖项的完整项目,但是当我使用 IIS 启动项目时,出现此错误。

    L'exception System.AggregateException s'est produite
  HResult=0x80131500
  Message=One or more errors occurred.
  Source=<Impossible d'évaluer la source de l'exception>
  Arborescence des appels de procédure :
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Microsoft.AspNetCore.Builder.WebpackDevMiddleware.UseWebpackDevMiddleware(IApplicationBuilder appBuilder, WebpackDevMiddlewareOptions options)
   at Test.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) in C:\VS2017\Project\Test\Startup.cs:line 44

Exception interne 1 :
Exception : Call to Node module failed with error: Webpack dev middleware failed because of an error while loading 'aspnet-webpack'. Error was: C:\VS2017\Project\Test\node_modules\webpack\lib\webpack.js:7
const Compiler = require("./Compiler");
^^^^^
SyntaxError: Use of const in strict mode.
    at exports.runInThisContext (vm.js:73:16)
    at Module._compile (module.js:443:25)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (C:\VS2017\Project\Test\node_modules\aspnet-webpack\WebpackDevMiddleware.js:4:15)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
Current directory is: C:\VS2017\Project\Test

我不知道我失败的哪一步,所以如果有人已经这样做了。

【问题讨论】:

    标签: webpack asp.net-core angular2-template


    【解决方案1】:

    发生这种情况是因为aspnet-webpack 节点包需要更新版本的node

    const 和 let 是 ECMAScript 2015(又名 ES6 和 Harmony)的一部分,在 Node.js 0.10 或 0.12 中默认未启用。从 Node.js 4.x 开始,“所有 V8 认为稳定的交付 [ES2015] 功能在 Node.js 上默认启用,并且不需要任何类型的运行时标志。”。

    因此,通过升级到 Node.js 4.x 或更高版本,错误应该会消失。

    https://stackoverflow.com/a/23151062/5082427

    更新

    您可以通过在命令行中执行node -v来检查节点的安装版本。如果此命令输出的版本比您安装的版本旧,请检查 PATH 环境变量以确保您没有安装多个节点。

    【讨论】:

    • 我正在使用节点 6
    • @Elykx 你确定吗?你能在命令行中输入“node -v”并评论结果吗?
    • 这就是我得到的 node -v v0.12.2
    • 所以,您使用的不是节点 6。您使用的是节点 0.12.2。
    • 这很奇怪,您似乎安装了多个版本的节点。尝试检查您的 PATH 环境变量,看看那里是否有多个节点安装路径。
    猜你喜欢
    • 2019-04-20
    • 2017-07-22
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 2018-12-30
    • 1970-01-01
    • 2017-07-20
    • 2023-03-17
    相关资源
    最近更新 更多