AngularJS组件中的双向绑定问题
我正在创建一个AngularJS组件AngularJS组件中的双向绑定问题,angularjs,angularjs-components,two-way-binding,Angularjs,Angularjs Components,Two Way Binding,我正在创建一个AngularJS组件 var notificationComponent = { templateUrl: "notification.html", controller: ['$rootScope', notificationController], bindings: { visible: "=" } }; 我想在HTML中使用如下内容: <notification vis
var notificationComponent = {
templateUrl: "notification.html",
controller: ['$rootScope', notificationController],
bindings: {
visible: "="
}
};
我想在HTML中使用如下内容:
<notification visible="$rootScope.showNotification"></notification>
它不会更改“可见””属性值
根据我的理解,以下代码在AngularJS组件中进行双向绑定
bindings: {
visible: "="
}
有人能告诉我哪里出了问题吗?它应该
$root
才能访问$rootScope
:
<notification visible="$root.showNotification"></notification>
但请记住-不建议使用$root和$rootScope,这可能会导致不可预测的行为,您应该更好地规划您的应用程序architecture@LuninRoman如果我不使用$rootScope跟踪标志showNotification,那么实现它的更好方法应该是什么,例如,
NotificationService
使用方法show
和hide
,或者至少使用Angularjs$broadcast服务发射和观看事件。
<notification visible="$root.showNotification"></notification>