亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

未來就是獨立組件!

The future is standalone!

Angular v19 将把组件、指令和管道默认为 standalone: true

在v14中,我们引入了开发预览版的“独立”功能,首次实现了无需依赖NgModules构建应用程序。从那以后,“独立”功能已经稳定下来,并且成为了Angular团队推荐的编写Angular代码的方式。CLI默认生成带有standalone: true的组件,Angular文档首先教授所有新Angular开发者使用独立组件。无论是在Google内部最大的Angular应用程序中,还是互联网上的其他Angular应用程序中,采用率都很高并且仍在不断增长。

不仅 standalone 让 Angular 更容易学习和上手,还带来了几个激动人心的新功能。在 @angular/router 中, [loadComponent](https://angular.dev/api/router/Route#loadComponent) 简化了路由级别的懒加载,并依赖于 standalone 特性。指令组合 API 通过支持 standalone 指令在宿主组件或指令的声明中应用,实现了更灵活的组件行为组合模型。当然,惰性视图 透明地在模板级别懒加载 standalone 组件和指令,使优化 Angular 应用程序比以往任何时候都更简单。

在 v19 版本中,我们将迈出下一步,反转组件、指令和管道中 standalone 标志的默认值,这样你将不再需要输入“standalone: true”。通过这项更改,例如这样的组件:

下面是一个展示Angular中独立模式用法的例子

zh: 可以写成:

示例显示了v19中移除的独立标志位

如果我还在使用NgModule,那该怎么办?

这没问题,我们不会弃用standalone选项或NgModules本身,。你仍然可以通过在组件装饰器中设置standalone: false来继续使用NgModule组件。

我现有的独立模块或NgModules代码要怎么改?

作为 v19 版本 Angular 更新的一部分,我们将执行一次自动迁移,它将:

  • 移除现有独立组件的 standalone: true 属性,因为这将成为新的默认值。
  • 为现有 NgModule 组件添加 standalone: false,以确保它们继续正常运行。

你可以启用 strictStandalone 编译器选项,这样只有独立的组件才能在你的应用程序中使用。

关于FormsModule及其他如FormsModule这样的npm库应该怎么做?

这里一切都不会改变。即使启用了 strictStandalone 编译选项,独立组件仍然可以按需导入 NgModule 依赖。

如果你正在为 NPM 编写一个库,你也不需要做什么——你的组件在用户导入时也会正常工作,无论用户使用的是带新默认值的 v19 还是其他版本。

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消