.subscribe(
(response) => {
/* this function is executed every time there's a new output */
console.log("VALUE RECEIVED: "+response);
},
(err) => {
/* this function is executed when there's an ERROR */
console.log("ERROR: "+err);
},
() => {
/* this function is executed when the observable ends (completes) its stream */
console.log("COMPLETED");
}
);
中isOpen
指令的<md-menu>
属性(或类似)是否可以侦听或绑定?
注意:我最初的问题要长得多,而且过于复杂,@Sarhanis让我意识到我在问错误的问题。
答案 0 :(得分:4)
感谢@Sarhanis,我能够找到如何将操作绑定到菜单打开和关闭事件。在打开和关闭菜单时,Angular Material分别广播$mdMenuOpen
个$mdMenuClose
个事件:
$scope.$on('$mdMenuOpen', function(event, menu) {
console.log('opening menu...', event, menu);
});
$scope.$on('$mdMenuClose', function(event, menu) {
console.log('closing menu...', event, menu);
});
答案 1 :(得分:1)
我在同样的情况下苦苦挣扎,当我尝试你的答案时,我发现在<md-menu>
{{1}}内有一个{{1}}
所以使用它不需要你绑定到一个事件。
答案 2 :(得分:0)
您的示例存在更大的应用程序设计问题。
你应该避免在Angular项目中使用jQuery。通过直接在DOM上工作,jQuery破坏了Angular的设计运作方式。
如果要向HTML元素添加类和事物,可以使用普通类属性和ngClass的组合。这里有一些关于ngClass的doco:https://docs.angularjs.org/api/ng/directive/ngClass
显示和隐藏元素应该使用ngShow或ngIf: https://docs.angularjs.org/api/ng/directive/ngShow https://docs.angularjs.org/api/ng/directive/ngIf
它们应该处理您在控制器中定义的范围变量。