1

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

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

这个想法是使用原生 JS 函数来操作字符串。

4

1 回答 1

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);
    }
}
于 2012-10-07T08:49:16.027 回答