在Angularjs中操作{}内的字符串

时间:2012-10-07 04:37:31

标签: javascript angularjs

我是Angularjs的新手。我做了一些测试,但我无法确定是否有办法做这样的事情:

<li ng-repeat="article in articles" class="thumbnail">
    <img  ng-src="{{encodeURI(article.image)}}"></a>
</li>

我们的想法是使用原生JS函数来操作字符串。

1 个答案:

答案 0 :(得分:6)

您不必在这些场景中使用interpolate指令。你可以使用一些更容易理解的东西,比如一个函数。

<li ng-repeat="article in articles" class="thumbnail">
<img ng-src="encode(article.image)">
</ii>

现在,encode应该是包含文章的范围或内部范围中的函数(注意:ng-repeat为它创建的每个项创建一个新范围。因此,在每个文章的示例中都会有一个新的范围)。

让我们说你的控制器名为ArticleCtrl(我将假设)

function ArticlesCtrl($scope){
    $scope.articles = [];
    $scope.encode = function(url){
        return encodeURI(url);
    }
}