スコープの分離がどのように機能するかを理解しようとしていますが、明らかに非常に基本的なものが欠けています。選択ボックスを介してスコープ プロパティを設定し、このプロパティをディレクティブの分離スコープに渡そうとしていますが、正しく機能していないようです。
私の問題を要約した例を 次に 示します。
<div ng-controller="MyCtrl">
<select name='optionfoo' ng-model='foo'>
<option>a</option>
<option>b</option>
</select>
value: {{foo}}
<div id='dir' isolate_foo="{{foo}}" dir></div>
<div id='dir2' foo="{{foo}}" dir2></div>
</div>
js コード:
var myModule = angular.module('myModule', [])
.directive('dir', function () {
return {
restrict:'A',
template: 'isolate foo: {{foo}}',
scope:{
foo:'@isolate_foo',
}
};
}).directive('dir2', function () {
return {
restrict:'A',
template: 'parent foo:{{foo}}',
};
})
.controller('MyCtrl', ['$scope', function ($scope) {
$scope.foo = 'b';
}]);
この例では、2 つのディレクティブがあります。1 つは、isolate スコープを介してプロパティを取り込もうとするもので、もう 1 つは親スコープを継承するだけのものです。「dir2」ディレクティブは期待どおりに機能しているように見えますが、「dir」ディレクティブ (isolate スコープ ディレクティブ) は、親ディレクティブで渡されている属性を実際に設定解除しているようです。
これは初心者の質問だと確信していますが、検索に何時間も費やしましたが、何が間違っているのかわかりません。どんな提案でも大歓迎です。
ありがとう!