我想在角度Js中在控制器内创建一个控制器。但我的代码不起作用。请帮帮我。
控制器:
Test User Has Order Invoice
Expected: True
But was: False
下面是我的html正文:
app.controller('MainController',function($rootScope,$scope){
console.log('MainController Created');
$scope.test = "Success";
app.controller('InnerController',function($scope){
console.log('Inside the InnerController');
console.log($scope.test);
})
});
答案 0 :(得分:1)
你应该把你的内部控制器声明放在MainController之外,因为它们都需要在解析html之前初始化
app.controller('MainController',function($rootScope,$scope){
console.log('MainController Created');
$scope.test = "Success";
});
app.controller('InnerController',function($scope){
console.log('Inside the InnerController');
console.log($scope.test);
});
答案 1 :(得分:1)
是一个内部控制器的父控制器 但在角度上它是控制器与他自己一样:
app.controller('MainController',function($rootScope,$scope){
console.log('MainController Created');
$scope.test = "Success";
});
app.controller('InnerController',function($scope){
console.log('Inside the InnerController');
console.laog($scope.test);
})
答案 2 :(得分:0)
您无法在另一个控制器内创建控制器。但是您可以将DOM元素与不同的控制器嵌套在一起。所以你应该改变你的控制器'声明:
app.controller('MainController',function($rootScope,$scope){
console.log('MainController Created');
$scope.test = "Success";
});
app.controller('InnerController',function($scope){
console.log('Inside the InnerController');
console.log($scope.test);
});
请注意test
中仍然可以使用InnerController
。