在Angular / CLI / TypeScript 2.3应用程序中,我有一个代码,它会抛出类型错误:
TypeError:无法分配给对象'#'
的只读属性'myValue'
这很可能是试图改变用const
声明的对象的属性。问题的原因不是我的观点。
我的观点和问题是我只在ng build
之后看到它们,但在本地运行时却看不到它们。如何在ng serve
期间将其显示出来?
修改
看起来好像'use scrict'
已注入构建的代码中,而不是ng serve
期间由Webpack运行的代码。
const foo = 27;
// Any of the following uncommented lines throws an exception.
// Assignment operators:
foo = 42;
但这会:
'use strict'; // <<<<<<<<<<<<<<---------------------!!!!!!!!!!!!!!!!
const foo = 27;
// Any of the following uncommented lines throws an exception.
// Assignment operators:
foo = 42;
答案 0 :(得分:2)
我假设您正在使用@developer033评论中提到的ng build --prod
。
生产(AoT)编译和非生产编译是两回事。 Prod旗帜更“严格”。
您可以通过此链接查看生产代码的注意事项:https://github.com/rangle/angular-2-aot-sandbox
要简单回答有关如何使用ng build --prod
检测ng serve
错误的问题:您不能。也许如果你使用AoT设置设置你的短号,你的IDE可以告诉你什么和不该做什么。