zoukankan      html  css  js  c++  java
  • angular指令,异步调用数据,监控数据的变化(自定义一个表头的指令)

    angular框架中提供了很多有效的指令,指令的目的就是为了提高代码的复用率,提高工作效率。

    下面我们自己来定义一个指令:

    一点建议:写指令名字的时候,尽量不要用用大写,下划线等,否则会有很大的坑等着你来踩
    指令文件的结构:
    js/directives/table
    table.html
    table.js
    
    table.js
    define(['app'], function (myapp) {
        myapp
            .directive('dirtable', [function () {
                return {
                    scope:{
                        "datasource": "=",
                        "option":"="
                    },
                    restrict: 'AE',
                    templateUrl: 'js/directives/table/table.html',
                    link: function (s, element, attrs) {
                    //监听值的改变,避免js执行顺序的影响(特别的当存在异步加载数据的时候)
                        s.$watchGroup(['datasource','option'], function (n_value) {
                            if (n_value) {
                                s.add_item=n_value[0];
                                s.n_option=n_value[1];
                            }
                        })
                    }
                }
            }])
    })

    table.html:
    <table style="100%;">
        <thead>
    <tr class="">
    <th ng-repeat="titlename in n_option.title" width="{{titlename.wid}}"> {{titlename.name}}</th>
    </tr>
    </thead>
    <tbody>
    <tr ng-repeat="tmp in add_item track by $index">
    <td ng-repeat="title in n_option.title" width="title.wid">{{tmp[title.key]}}</td>
    </tr>
    </tbody>
    </table>

    控制器中代码:

       s.asd=[];

       s.qwe={

          title:[

              {name:'序号',key:'order',wid:'97'},

              {name:'姓名',key:'realname',wid:'123'},

              {name:'手机号',key:'phone',wid:'150'},

              {name:'邮箱',key:'email',wid:'198'},

              {name:'角色',key:'rolename',wid:'142'},

              {name:'所属部门',key:'departmentname',wid:'142'},

              {name:'创建人',key:'createduser',wid:'114'},

              {name:'创建时间',key:'created_at',wid:'160'},

              {name:'操作',key:'pno',wid:'228'},

                 ]

       };

    Html:
    <dirtable datasource="asd" option="qwe"></dirtable>
  • 相关阅读:
    flash使用lua
    如何写出兼容大部分浏览器的CSS 代码
    typeof 详解
    人月神话阅读笔记(三)
    人月神话阅读笔记(二)
    仓库物资管理
    动手动脑(四)
    人月神话阅读笔记(一)
    动手动脑(六 文件操作)及课后作业
    java异常处理
  • 原文地址:https://www.cnblogs.com/evaling/p/6803413.html
Copyright © 2011-2022 走看看