我正在寻找使用ng-style动态设置div的背景图像。有几个答案,但没有为我工作。 我已经意识到,对于一个简单的情况下,如下图所示,没有任何问题ng-class在渲染后不设置图像背景
<li ng-style="{'background-image': 'url({{ image.source }})'}">...</li>
其中$scope.image = ...
定义。或者更直白:
<li ng-style="{'background-image': 'url(http://example.com/image.png)'}">...</li>
但是假如你具备以下条件:
<li ng-style="{'background-image': 'url({{ item.image_url }})'}">...</li>
和控制器:模板被渲染后
$scope.item = undefined;
Items.get({id: 1})
.then(function (item) {
$scope.item = item;
});
项目变为可用。而且我发现,角只是设置背景图片到主机URL
<li ng-style="{'background-image': 'url({{ item.image_url }})'}" style="background-image: url(http://localhost:3000/);">
</li>
我可以使用自定义指令这一点,但如果有得到这个工作的一个简单的方法,我宁愿这在指示。
这里有一个plunker演示该问题:
http://plnkr.co/edit/5JsK4njQi7Kc3ShUtRIw?p=preview