Angular 类型为'的角度参数;字符串';不可分配给类型为';编号';
我有这个密码Angular 类型为'的角度参数;字符串';不可分配给类型为';编号';,angular,ionic-framework,Angular,Ionic Framework,我有这个密码 {{(((product.price - product.new_price)/product.price)*100).toFixed(0 | currency: 'Rp ' : 'symbol' : '1.0-0')}}% OFF 它返回我产品折扣的百分比,如果我使用ionic-serve(ng-serve)它可以正常工作,但当我尝试在生产中构建我的应用程序时,它会说: 类型为“string”的参数不能分配给类型为的参数 “数字” 注意: 我使用的是带有角度~8.1.2的离子4
{{(((product.price - product.new_price)/product.price)*100).toFixed(0 | currency: 'Rp ' : 'symbol' : '1.0-0')}}% OFF
它返回我产品折扣的百分比,如果我使用ionic-serve(ng-serve)
它可以正常工作,但当我尝试在生产中构建我的应用程序时,它会说:
类型为“string”的参数不能分配给类型为的参数
“数字”
注意:
toFixed
part
.toFixed(0 | currency: 'Rp ' : 'symbol' : '1.0-0')
删除后,现在它在生产中构建我的应用程序,没有错误
最终代码:
{{
((
(product.price - product.new_price)/product.price
)*100)
}}% OFF
希望有帮助。首先,当您对要绑定的值进行了这么长时间的计算时,您应该将其保存为组件中的变量,而不是直接在模板中进行计算。它的可读性较差,调试/测试更烦人。第二,错误消息是否正确?当然你发球时它会跑,但它应该跑吗?您是否在期望数字的地方使用字符串?最后,我建议在运行serve时使用
--aot
标志。它会给您带来编译时错误,这意味着它将更接近实际构建(我简化了很多,但这里是文档:)