テンプレート要素に変数(コントローラ内に定義された要素)を使用する必要があります。ディレクティブのテンプレート内のディレクティブのコントローラ変数にアクセスする方法は?
angular.module('home').directive('mediaTile', function(){
\t return {
\t \t restrict: "AE",
\t \t replace: 'true',
\t \t scope: {
\t \t \t media: '=',
\t \t \t displayFilter: '='
\t \t },
\t \t controller: function($scope){
\t \t \t var vm = this;
vm.mediaImageActual = 'img/large-tiles.png'; }
\t \t },
\t \t controllerAs: 'vm',
\t \t template: \t '<div>' +
\t \t \t \t \t '<img preload-image ng-src="{{vm.mediaImageActual}}">' +
\t \t \t \t \t '</div>'
\t };
});
<div media-tile display-filter="view.displayFilter" media="dataList.lists[0]"></div>
NG-srcがvm.mediaImageActualすなわち適切な値を取得していません。
thisのようなオンラインソリューションを試しましたが、問題を解決できませんでした。 何が間違っていますか?
このコードはOPに役立つ理由のいくつかの説明を追加してください。これにより、今後の視聴者からの回答が得られます。詳細については、[回答]を参照してください。 –
@Developer:Thanks :)しかし、残念ながら、私はangularjs 1.3を使用しています。 – shahidbits
@shahidbits - この場合、ディレクティブで 'bindToController'をtrueに設定することができます。 – Developer