我们从5升级到Angular 6.我们有一个共享库,我们遇到了构建错误.作为一个Java商店,我们养成了将组件方法和属性标记为私有的习惯.在Angular 6中构建我们的库(在转换和使用新的库CLI功能之后),我们得到:
Property 'getCurrentYear' is private and only accessible within class.
Run Code Online (Sandbox Code Playgroud)
实际上,模板html中使用的任何属性或方法都不能在组件类上标记为私有.当然,我们可以通过删除'private'修饰符来解决这个问题.当我们使用https://github.com/raphael-volt/ng2-testable-lib生成我们的库时,在角度5中不是这种情况.
奇怪的是,只有在编译我们的库时才会发生这种情况.我们将应用程序升级到角度6,该模型还具有模板中组件/用法的私有属性和方法,并且没有问题.
我们找到了错误吗?有没有我们不遵守的最佳做法?