2

問題が 1 つあります。Angular localStorageeモジュールを使用して設定を保存しています。これをコントローラーで次のように設定しました。

localStorageService.set('localStorageKey','Add this!');

それは非常にうまく機能していますが、その値をパラメーターとして取るディレクティブの変更について localStorageKey を監視するにはどうすればよいですか?

私は次のようなものを試しました:

.directive('fooBar', function(localStorageService){
    var linker = function(scope, element, attrs){

        var unit = localStorageService.get('localStorageKey');
        $watch('unit', function(){
            console.log(unit);
        });

    }

    return {
        restrict: 'AE',
        scope: {
            value: '@dataValue'
        },
        replace: true,
        link: linker
    }
});

しかし、運が悪い、私はこのような変数を見ることができるとは思わない. どうすればこの問題を解決できますか?

ありがとう。

4

1 に答える 1

4

これはうまくいくはずです:

$scope.$watch(function() {
    return localStorageService.get('localStorageKey');
}, function(value) {
    console.log(value);
});
于 2014-05-29T14:06:43.723 に答える