为标签创建指令

时间:2013-09-02 14:01:31

标签: javascript angularjs

我尝试创建简化HTML的指令。 现在html看起来像:

        <tr>
            <th class="span3" ng-click="setSorting('status')" ng-class="columnClass('status')">
                title1 
                <div class="sorted-image"> 
                    <i ng-class="iconClass('status')"></i> 
                </div>
            </th>
            <th class="span4" ng-click="setSorting('sensorIdOrder')" ng-class="columnClass('sensorIdOrder')">
                title2 
                <div class="sorted-image"> 
                    <i ng-class="iconClass('sensorIdOrder')"></i> 
                </div>
            </th>
            <th class="span3">
                title3 
            </th>
        </tr>

其中setSorting用于排序和设置在ng-repeat中使用的值:

<tr ng-repeat="s in getData()| orderBy : sorting.field : !sorting.asc">

我想创建thsort指令,它包含所有函数(setSorting,columnClass,iconClass)并且只使用一个参数参数

        <tr>
            <thsort class="span3" sort-field = "status")">
                title1 
            </thsort>
            <thsort class="span4" sort-field = "sensorIdOrder">
                title2 
            </thsort>
            <th class="span3">
                title3 
            </th>
        </tr>   

编译后应用于

的所有参数(Like参数)

1 个答案:

答案 0 :(得分:1)

不必尝试创建sort指令。您可以使用ng-Grid directive,支持排序,自定义主题和许多有用的功能。