为啥升级到 Angular 7 Ecma6 不起作用?
Posted
技术标签:
【中文标题】为啥升级到 Angular 7 Ecma6 不起作用?【英文标题】:Upgrading to Angular 7 Ecma6 not working why?为什么升级到 Angular 7 Ecma6 不起作用? 【发布时间】:2019-07-21 01:55:19 【问题描述】:我刚刚将我的应用程序从 angular 6 更新到了 angular 7,但其中某种在 angular 6 中工作而不在 angular 7 中工作,它使浏览器处于无限加载状态。
例如:
@Component(
selector: 'app-page',
template: `<div *ngFor="let key of objectKeys(items)">key + ' : ' +
items[key]</div>`
)
export class MyComponent
objectKeys = Object.keys;
items = keyOne: 'value 1', keyTwo: 'value 2', keyThree: 'value 3' ;
constructor()
上面的代码在 Angular 6 中工作,但在 Angular 7 中没有,为什么会这样? 对不起我的英语,希望有人能帮助我或让我明白发生了什么问题?
【问题讨论】:
可以添加错误信息吗? @user1664823 不是显示浏览器选项卡冻结的错误消息 我不确定您的浏览器为什么会死机,但在您的示例中,您可以使用 keyvalue pipe。<div *ngFor="let item of items | keyvalue">item.key : item.value</div>
@fridoo 谢谢,但我的问题是为什么在 Angular 6 中工作的 Ecma6 脚本现在不能在 Angular 7 中工作?
我没有看到这个问题。我已经包含了一个 stackblitz (stackblitz.com/edit/…)。请参阅下面关于在 typescript 中定位 ES6 的答案。
【参考方案1】:
您可以尝试将 tsconfig.json 文件设置为针对 ES6 吗?
// tsconfig.json
"compilerOptions":
/* Basic Options */
"target": "es6"
【讨论】:
是的,我的 tsconfig.json 的目标值设置正确,可能我必须再次查看我的配置,迁移时发生了什么错误。以上是关于为啥升级到 Angular 7 Ecma6 不起作用?的主要内容,如果未能解决你的问题,请参考以下文章