在2.0.0-beta.16版本中,管道发生了重大变化。来自angular2 更新日志
管道现在采用可变数量的参数,而不是包含所有参数的数组。
所以,而不是transform(value, args){}
现在transform(value,args...){}
前
transform(value, [arg1,arg2,arg3])
现在
transform(value, arg1, arg2, arg3)
如果您不想对管道进行任何更改,您仍然可以使用它们,但您需要更改添加参数的方式
前:
{{someValue|somePipe:arg1:arg2}}
将其更改为:
{{someValue|somePipe:[arg1,arg2]}} // this will work with the new syntax without changing anything in the pipe itself
或者,更好的方法是更改管道并使转换方法接受多个参数而不是一个数组。
现在,直接回答你的问题:
使其与新版本一起使用所需要做的就是更改:
transform(input:any, [config = '+']): any{
至
transform(input:any, config = '+'): any{
就是这样。因为在您的代码中,您永远不会使用多个参数调用管道。它始终是一组参数,与新语法完美契合。
这是你固定的