Angular 1. *指令模板 - html文本插值的使用属性?
我正在使用一个指令让我的代码更加干燥......或者尝试使用。但是由于json数据结构的差异,我不确定这是否可能是因为每个单选按钮的插值文本。
<ppv-filter filter-name="Region" radio-value="choice.code"
sort="description" filter-data="regions"></ppv-filter>
<ppv-filter filter-name="Market" display-prop="description"
filter-data="markets"></ppv-filter>
<ppv-filter filter-name="Dealer" display-prop="code"
filter-data="dealers"></ppv-filter>
指令模板:
<div ng-if="filterName === 'Region'">
<div ng-repeat="choice in filterData| orderBy: sort">
<input type="radio" value="{{choice.code}}" name="regionRadio">
{{choice.description}}
</div>
</div>
<div ng-if="filterName === 'Market'">
<div ng-repeat="choice in filterData| orderBy: 'code'">
<input type="radio" name="bob">
{{choice.code}}
</div>
</div>
<div ng-if="filterName === 'Dealer'">
<div ng-repeat="choice in filterData| orderBy">
<input type="radio" name="foo">
{{choice}}
</div>
</div>
angular.module('app')
.directive('ppvFilter', ['regionMarketDealerSrv',
function(regionMarketDealerSrv) {
return {
templateUrl: 'app/ppv/ppv-filter.dir.html',
restrict: 'E',
scope: {
filterName: '@',
sort: '@',
radioValue: '@',
filterData: '='
},
是否有可能通过一个属性绑定拿的地方,例如,{{choice.description}}
?如果不是这样,那么通过重复使用带有如此多代码块的指令,我不会真的让我的代码变得更干燥。
谢谢。我的目标不是使用'switch'或'ng-if' .....只是使用一个单独的html代码块来查看指令。如果没有,我认为如果没有这么多条件的指令,代码会更容易阅读。 – dman