在我的角度应用程序中,我只有一个组件。
我想从组件控制器调用mainMethod
主控制器。
app.controller("mainController",function($scope)
{
$scope.mainMethod = function()
{
console.log("its working");
}
})
<card call-method="mainMethod()"><card>
app.component("card",{
bindings:{
callMethod:'&'
},
controller:compController,
template:"<button on-click="$ctrl.triggerMethod()">call<button>"
})
function compController()
{
function triggerMethod()
{
callMethod();
}
}
答案 0 :(得分:0)
您忘了将triggerMethod
绑定到组件的$ctrl
,并且也应该调用$ctrl.callMethod()
:
function compController() {
var $ctrl = this;
$ctrl.triggerMethod = function triggerMethod() {
$ctrl.callMethod();
};
}
此外,您必须更新模板并使用ng-click
代替on-click