Ng-design-material需要一个控制器来管理ui组件。但我还需要在同一页面上的控制器来管理用户数据和逻辑(例如输入或计时器)。 根据这个Q/A,在同一个元素中不可能有两个控制器。 所以问题是,什么是最好的做法,更好的解决方案来做我想要的?
http://codepen.io/anon/pen/jEgYwd
var app = angular.module('HelloApp', ['ngMaterial']);
app.controller('AppCtrl', ['$scope', '$mdSidenav', function($scope, $mdSidenav){
$scope.data = "";
$scope.toggleRight = function() {
$mdSidenav('right').toggle()
.then(function(){
$log.debug("toggle RIGHT is done");
})}
}]);
在上面的示例中,“数据”应该在其他地方?
答案 0 :(得分:1)
使用md-button
E
附加点击事件会更好
<强>指令强>
app.directive('mdButton', function($log, $mdSidenav){
return{
restric: 'E',
link: function(scope, element, attrs){
element.on('click', function(){
$mdSidenav('right').toggle()
.then(function(){
$log.debug("toggle RIGHT is done");
scope.$eval(attrs.action); //you could pass any method which you want to run
})
});
}
}
});