わかりました、これは複雑な質問であり、私は悪いアプローチを求めているかもしれません. その場合は、お知らせください。
だから私はdirective
ナビゲーションバー用の を持っています。誰かが何かをクリックすると、クラスを追加するディレクティブを取得して、バーをロードすることができました。StackOverflow に感謝します。
しかし今、私は値を取得して設定するサービスを持っています。サービスで値が変更された場合、それをビューに反映させたい。そのようなことは可能ですか?
EDIT
明確にするために、 a を使用する場合$apply(function()....
、どのように正確に行うのですか? 私の見解には次のようなものがあります。私のビューは、特定のコントローラーまたはスコープにバインドされていません。そうあるべきかどうかはわかりません。しかし、ここに私の見解のスニペットがあります:
<p>
Are you sure you change that song,
<br />
{{ songs[0].title }}
</p>
これが私の指示です:
angular.module('MyApp')
.directive('navbar', function () {
return {
restrict: 'A',
templateUrl : '/views/partials/nav.html',
controller: function ($scope, ModalService) {
$scope.ms = ModalService;
$scope.songs = {};
$scope.$watch('ms.songs', function(newVal, oldVal) {
if(newVal != null) {
$scope.$apply(function() {
$scope.songs = newVal;
});
}
});
},