ページでの一部のアイテムの表示方法を変更するtrue/falseに設定しているフラグがあります。テンプレートに値を取得して実際に機能させるのに問題が発生しています。通常のHTML(テンプレート内ではない)は正常に機能します。
restrict: 'E',
scope: {
speedDirection: "@",
speedName: "@",
value: "@",
editElements: "="
},
template:
'<div>'+
'<p class="body-text">{{speedDirection}} '+
'<input type="text" name="{{speedName}}" value="{{value}}" ng-show="editElements">'+
'<span ng-hide="editElements">{{value}}</span>'+
'</p>'+
'</div>',
ただし、渡された値だけでなく、editElementsの動的モデル値を使用したいと思います。そうすれば、変更されたときに、表示されたテンプレートの更新が反映されます。変数は、テストデータを保存しているオブジェクトで定義されています。
function MyObject($scope) {
$scope.editElements = true;
これを機能させる方法はありますか?「@」や{{editElement}}ビットなどを使用して、(上記のように)通過させてみました。カスタムHTML部分:
<speed-limit speed-direction="A to B:"
speed-name="reverse"
value="{{newObject.speedLimit[0]}}"
editElement="editElements">
</speed-limit>
更新: Batarangをインストールしましたが、カスタム要素の特定の部分(速度制限)に「editElement:null」が表示されます。ただし、editElementsが参照される他の領域は正しく設定されています。これは奇妙なスコープの問題ですか?