如何使用可选初始化进行表达式“&”绑定
How to make expression '&'-binding with optional initialization
我想初始化一个回调 &-属性 绑定到 return 为真(如果没有传递回调)的函数。像这样:
export const DatepickerInputComponent = {
bindings: {
validityCheck: '&',
},
templateUrl: './datepicker-input.component.html',
controller: class DatepickerInputController implements ng.IController {
validityCheck: Function = (args) => true; // <- doesn't work
validate(value: Date): void {
// some validations
return this.validityCheck({ selection: value });
}
},
}
从未定义 validityCheck
属性 的组件调用 validate() 时,它将 return 未定义。关于如何让它发挥作用有什么想法吗?
正如术语binding
所暗示的,它必须从父组件传入。
<date-picker-input-component
format="some string"
mode="some other string"
validity-check="someFunctionFromParentController">
</date-picker-input-component>
并从你的控制器中删除这部分
validityCheck: Function = (args) => { return true; }; // <- doesn't work
假设 someFunctionFromParentController
是在您的父控制器上定义的
尝试将绑定设置为可选:
bindings: {
validityCheck: '&?'
},
我想初始化一个回调 &-属性 绑定到 return 为真(如果没有传递回调)的函数。像这样:
export const DatepickerInputComponent = {
bindings: {
validityCheck: '&',
},
templateUrl: './datepicker-input.component.html',
controller: class DatepickerInputController implements ng.IController {
validityCheck: Function = (args) => true; // <- doesn't work
validate(value: Date): void {
// some validations
return this.validityCheck({ selection: value });
}
},
}
从未定义 validityCheck
属性 的组件调用 validate() 时,它将 return 未定义。关于如何让它发挥作用有什么想法吗?
正如术语binding
所暗示的,它必须从父组件传入。
<date-picker-input-component
format="some string"
mode="some other string"
validity-check="someFunctionFromParentController">
</date-picker-input-component>
并从你的控制器中删除这部分
validityCheck: Function = (args) => { return true; }; // <- doesn't work
假设 someFunctionFromParentController
是在您的父控制器上定义的
尝试将绑定设置为可选:
bindings: {
validityCheck: '&?'
},