将
[child]Component
在不传递任何参数的情况下独立工作?因为我希望它也能作为一个独立的组件工作
&
绑定可选
&?
并在调用前检查:
子组件
app.component('childComponent', {
templateUrl: 'component/child.html',
controller: ChildController,
controllerAs: 'childCtrl',
bindings: {
onDone: '&?'
}
});
function ChildController(){
var vm = this;
vm.done = function done(){
console.log("child function")
vm.onDone && vm.onDone();
}
}
app.component('parentComponent', {
templateUrl: 'component/parent.html',
controller: ParentController,
controllerAs: 'parentCtrl'
});
function ParentController(ProductService, LogService){
var vm = this;
vm.hideModal = hideModal;
function hideModal(){
console.log("Hide Modal")
}
}
<div class="modal-body">
<div class="card-content table-responsive">
<child-component on-done="parentCtrl.hideModal()">
</child-component>
</div>
</div>
&?
绑定时,子组件可以独立操作:
<child-component></child-component>
所有4种绑定(
@
,
=
<
和
&
?
到表达式。标记必须位于模式之后、属性名称之前。这有助于完善接口指令提供的功能。
— AngularJS Comprehensive Directive API Reference - scope