2016-12-10 12 views
-3

プロジェクトでangular 1.xを使用していますが、フィルタを作成したいのですが、それを行う方法はわかっていますが動作しませんし、コンソールエラーも発生しません。AngularJSフィルタが機能しません

var myAPP = angular.module("myAPP",[]); 

myAPP.filter("miFilter",function(){ 
    return function(input){ 
     return input.replace("normal","400x400"); 
    }; 
}); 

、私はこれを使用する私のhtmlファイルに:

<img src="{{url | miFilter}}" /> 
+0

あなたのフィルタ作品(http://plnkr.co/edit/oSLyBQX461npbuQR6Nu7?p=preview)、私は、これは '$のscope.url'が未定義さに問題があるか、と思われるでしょうそのコントローラーによって設定されていない – haxxxton

+0

問題はsrcを使用してng-srcでない – Daniel

答えて

1

srcを使用しないでください

これは私のJSコードです。代わりにng-srcを使用してください。 AngularJS documentationから

src属性に{{hash}}ような角度のマークアップを使用して

が正しく動作しません:角度が{{hash}}内の表現を置き換えるまで、ブラウザはリテラルテキスト{{hash}}でURLから取得します。 ngSrc指示文はこの問題を解決します。

+0

右、ありがとうございました – Daniel

+0

@Keite - 私の答えを受け入れてください! – fernandoespinosa

+0

私はあなたの意見を聞いたことがありませんか? – Daniel

0

このコードを参考にして、コードに従って変更してください。

<!DOCTYPE html> 
<html> 
<head> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
    <script> 

     angular.module('myApp', []) 
     .controller('namesCtrl', function($scope) { 
      $scope.url = 'http://www.w3schools.com/angular/pic_angular.jpg'; 
     }).filter("miFilter",function(){ 
      return function(input){ 
       return input.replace("normal","400x400"); 
      }; 
     });; 
    </script> 
</head> 
<body> 
    <div ng-app="myApp" ng-controller="namesCtrl"> 
     <img ng-src="{{url | miFilter}}" /> 
    </div> 
</body> 

+0

コードをお寄せいただきありがとうございます。私のコードはすでに動作しています:) – Daniel

+0

@Keite great。しかし、これは他の人にとっては役に立ちます:) –

関連する問題