为啥升级到 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。 &lt;div *ngFor="let item of items | keyvalue"&gt;item.key : item.value&lt;/div&gt; @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 不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

为啥媒体查询在 Angular8 中不起作用

通过5个简单步骤升级到Angular 7

多维动态数组,为啥不起作用?

从 Angular 4 升级到 7 导致问题

我如何在 cdk-overlay-pane 旁边为 Angular 7 中的材质菜单应用自定义类

为啥外部链接在构建后在 phonegap 应用程序上不起作用