将@ angular / platform-browser(以及其他@ angular / xxx)升级到版本6.0.4之后,我在第一次加载应用程序时以及每次首页重新加载后出现此错误(第一次F5:错误,第二次F5 :工作):
NodeInvocationException:无法分配给只读属性 对象'[object Object]的'stopImmediatePropagation''TypeError: 无法分配给只读属性'stopImmediatePropagation' 对象'[对象]'在 DomEventsPlugin.module.exports ../ node_modules/@angular/platform-browser/bundles/platform-browser.umd.js.DomEventsPlugin.patchEvent (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:60044:50) 在新的DomEventsPlugin (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:60031:15) 在_callFactory的eval(ng:///AppModule/module.ngfactory.js:51:25) (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40373:28) 在_createProviderInstance $ 1 (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40319:26) 在resolveNgModuleDep (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40282:21) 在_createClass (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40346:29) 在_createProviderInstance $ 1 (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40316:26) 在resolveNgModuleDep (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40282:21) 在_createClass (I:\ PROGETTI \平台\ SOFTWARE \ CTAgenda \ ClientApp \ DIST \ vendor.js:40352:32)
这是我的vendor.js中生成错误的代码:
DomEventsPlugin.prototype.patchEvent = function () {
if (!Event || !Event.prototype) {
return;
}
if (Event.prototype[stopMethodSymbol]) {
// already patched by zone.js
return;
}
var delegate = Event.prototype[stopMethodSymbol] =
Event.prototype.stopImmediatePropagation;
Event.prototype.stopImmediatePropagation = function () { <-- ERROR
if (this) {
this[stopSymbol] = true;
}
// should call native delegate in case
// in some environment part of the application
// will not use the patched Event
delegate && delegate.apply(this, arguments);
};
};
这是我的环境
在开发模式下,我的webpack dev中间件处于活动状态,错误是否与创建供应商的时间有关?应用程序创建供应商的第一个加载时间,第二次从缓存中取出供应商:
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://localhost:5000/
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
Route matched with {action = "Index", controller = "Home"}. Executing action CTAgenda.Controllers.HomeController.Index (CTAgenda)
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
Executing action method CTAgenda.Controllers.HomeController.Index (CTAgenda) - Validation state: Valid
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
Executed action method CTAgenda.Controllers.HomeController.Index (CTAgenda), returned result Microsoft.AspNetCore.Mvc.ViewResult in 0.626ms.
info: Microsoft.AspNetCore.Mvc.ViewFeatures.ViewResultExecutor[1]
Executing ViewResult, running view Index.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://localhost:5000/dist/__webpack_hmr
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
Executed action CTAgenda.Controllers.HomeController.Index (CTAgenda) in 1660.2506ms
fail: Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
An unhandled exception has occurred while executing the request.
Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException: Cannot assign to read only property 'stopImmediatePropagation' of object '[object Object]'
TypeError: Cannot assign to read only property 'stopImmediatePropagation' of object '[object Object]'
at DomEventsPlugin.module.exports../node_modules/@angular/platform-browser/bundles/platform-browser.umd.js.DomEventsPlugin.patchEvent (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:60044:50)
at new DomEventsPlugin (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:60031:15)
at eval (ng:///AppModule/module.ngfactory.js:51:25)
at _callFactory (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40373:28)
at _createProviderInstance$1 (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40319:26)
at resolveNgModuleDep (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40282:21)
at _createClass (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40346:29)
at _createProviderInstance$1 (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40316:26)
at resolveNgModuleDep (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40282:21)
at _createClass (I:\Progetti\Platform\Software\CTAgenda\ClientApp\dist\vendor.js:40352:32)
at Microsoft.AspNetCore.NodeServices.HostingModels.HttpNodeInstance.InvokeExportAsync[T](NodeInvocationInfo invocationInfo, CancellationToken cancellationToken)
at Microsoft.AspNetCore.NodeServices.HostingModels.OutOfProcessNodeInstance.InvokeExportAsync[T](CancellationToken cancellationToken, String moduleName, String exportNameOrNull, Object[] args)
at Microsoft.AspNetCore.NodeServices.NodeServicesImpl.InvokeExportWithPossibleRetryAsync[T](String moduleName, String exportedFunctionName, Object[] args, Boolean allowRetry, CancellationToken cancellationToken)
at Microsoft.AspNetCore.NodeServices.NodeServicesImpl.InvokeExportWithPossibleRetryAsync[T](String moduleName, String exportedFunctionName, Object[] args, Boolean allowRetry, CancellationToken cancellationToken)
at Microsoft.AspNetCore.SpaServices.Prerendering.PrerenderTagHelper.ProcessAsync(TagHelperContext context, TagHelperOutput output)
at Microsoft.AspNetCore.Razor.Runtime.TagHelpers.TagHelperRunner.RunAsync(TagHelperExecutionContext executionContext)
at AspNetCore.Views_Home_Index.ExecuteAsync() in I:\Progetti\Platform\Software\CTAgenda\Views\Home\Index.cshtml:line 2
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageCoreAsync(IRazorPage page, ViewContext context)
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageAsync(IRazorPage page, ViewContext context, Boolean invokeViewStarts)
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderAsync(ViewContext context)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ActionContext actionContext, IView view, ViewDataDictionary viewData, ITempDataDictionary tempData, String contentType, Nullable`1 statusCode)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewResultExecutor.ExecuteAsync(ActionContext context, ViewResult result)
at Microsoft.AspNetCore.Mvc.ViewResult.ExecuteResultAsync(ActionContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultAsync(IActionResult result)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResultFilterAsync[TFilter,TFilterAsync]()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResultExecutedContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultFilters()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.SpaServices.Webpack.ConditionalProxyMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.SpaServices.Webpack.ConditionalProxyMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 2035.1489ms 500 text/html; charset=utf-8
fail: Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
An unhandled exception has occurred while executing the request.
System.Threading.Tasks.TaskCanceledException: The operation was canceled. ---> System.IO.IOException: Unable to read data from the transport connection: Operazione di I/O terminata a causa dell'uscita dal thread oppure della richiesta di un'applicazione. ---> System.Net.Sockets.SocketException: Operazione di I/O terminata a causa dell'uscita dal thread oppure della richiesta di un'applicazione
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)
at System.Net.Http.HttpConnection.FillAsync()
at System.Net.Http.HttpConnection.ReadNextResponseHeaderLineAsync(Boolean foldedHeadersAllowed)
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.FinishSendAsyncUnbuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
at Microsoft.AspNetCore.SpaServices.Webpack.ConditionalProxyMiddleware.PerformProxyRequest(HttpContext context)
at Microsoft.AspNetCore.SpaServices.Webpack.ConditionalProxyMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 600.0987ms 500 text/html; charset=utf-8
info: Microsoft.AspNetCore.NodeServices[0]
i ´¢ówdm´¢ú: wait until bundle finished: /dist/__webpack_hmr
info: Microsoft.AspNetCore.NodeServices[0]
Node will restart because file changed: I:\Progetti\Platform\Software\CTAgenda\wwwroot\dist\main-client.js
info: Microsoft.AspNetCore.NodeServices[0]
webpack built 1c1bbe760c1dbb40f7fd in 72352ms
info: Microsoft.AspNetCore.NodeServices[0]
i ´¢ówdm´¢ú: Hash: 1c1bbe760c1dbb40f7fd
Version: webpack 4.12.0
Time: 72352ms
Built at: 2018-06-12 11:06:08
Asset Size Chunks Chunk Names
main-client.js 1.94 MiB main-client [emitted] main-client
0.js 48.5 KiB 0 [emitted]
1.js 48.3 KiB 1 [emitted]
main-client.js.map 34.4 KiB main-client [emitted] main-client
0.js.map 81 bytes 0 [emitted]
1.js.map 81 bytes 1 [emitted]
Entrypoint main-client = main-client.js main-client.js.map
info: Microsoft.AspNetCore.NodeServices[0]
i ´¢ówdm´¢ú: Compiled successfully.
感谢您的支持。
答案 0 :(得分:0)
我有同样的问题。尝试更改
DomEventsPlugin.prototype.patchEvent = function () {
if (!Event || !Event.prototype) {
return;
}
if (Event.prototype[stopMethodSymbol]) {
// already patched by zone.js
return;
}
var delegate = Event.prototype[stopMethodSymbol] =
Event.prototype.stopImmediatePropagation;
Event.prototype[stopMethodSymbol] = function () { <-- CHANGE
if (this) {
this[stopSymbol] = true;
}
// should call native delegate in case
// in some environment part of the application
// will not use the patched Event
delegate && delegate.apply(this, arguments);
};
};
答案 1 :(得分:0)