首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角10:后置脚本需要吗?

角10:后置脚本需要吗?
EN

Stack Overflow用户
提问于 2020-07-23 13:52:04
回答 2查看 6.9K关注 0票数 3

这也许更像是一个澄清的问题:

根据常春藤的文档(从角9开始),我们需要在我们的postinstall中添加一个package.json脚本,如下所示:

"postinstall": "ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points"

但是,由于我们正在努力改进构建时间(从常春藤开始,这需要很长时间),我看到了一篇关于entwickler.de的文章(不幸的是德语中的文章),提到,从角9.1开始,我们就不再需要这个postinstall脚本了。

但是,我在官方文件中找不到省略这个postinstall脚本的任何东西.

这会不会是一种可能加快构建时间的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-23 14:10:16

postinstall只在运行npm install之后才运行,因此删除它不会加快构建时间(除了每次运行npm install的构建管道之外)。

根据角术语表ngcc所做的是:

角度兼容性编译器如果您使用Ivy构建应用程序,但它依赖于未使用Ivy编译的库,则CLI使用ngcc自动更新依赖库以使用Ivy。

因此,您仍然应该将其保留为postinstall脚本。不过,我不确定的是--create-ivy-entry-points标志,因为根据角质文档

不要使用--创建-常春藤-入口点,因为这将导致Node无法正确解析Ivy版本的包。

但这句话也属于“角壳”和“环球”的标题。当我升级到角10时,它没有移除旗子,所以我倾向于认为它仍然是需要的。

票数 2
EN

Stack Overflow用户

发布于 2020-10-19 20:42:51

我觉得这已经不需要了。

https://angular.io/guide/ivy

在版本9中,用于App和Angular的服务器生成器默认启用了bundleDependencies选项。如果您选择退出捆绑依赖项,则需要运行独立的角度兼容性编译器(ngcc)。这是必需的,因为否则Node将无法解决软件包的常春藤版本。

我认为这只是为了SSR的构建。现在只有ngcc

代码语言:javascript
复制
{
  "scripts": {
    "postinstall": "ngcc"
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63055924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档