Shl*_*rtz 23 javascript polymorphism dom rendering angularjs
我有一个项目清单.一个项目可以是很多东西,让我们说列表是这样的:
[userObject , vehicleObject , userObject , animalObject , animalObject]
Run Code Online (Sandbox Code Playgroud)
现在我想用ngRepeat指令渲染列表,该指令将根据对象的类型使用模板(多态渲染).可以这样做吗?
也许像(ng-use是假设指令):
<ul>
<li ng-repeat="item in items">
<img ng-use="item.type == 'user'" ng-src="item.src">
<a ng-use="item.type == 'vehicle'">{{item.link}}</a>
<span ng-use="item.type == 'animal'">{{item.name}}</span>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
Umu*_*acı 31
<ul>
<li ng-repeat="item in items" ng-switch="item.type">
<img ng-switch-when="user" ng-src="item.src">
<a ng-switch-when="vehicle">{{item.link}}</a>
<span ng-switch-when="animal">{{item.name}}</span>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
API参考:http://docs.angularjs.org/api/ng.directive:
ngSwitch