ViewModel设计规范

1.原型设计

1.1 AvalonJs原型

var vm = avalon.define({
    $id: 'xxxxCtrl',
    version: '1.0',
    xxxxCollection:{
        data: [ 
            { value:'value1' },{ value:'value2' },{ value:'value3' }
        ],
        count: 3
        OnClick: function(){
            var self = vm.xxxxCollection;
        },
        Init: function(){

        }
    }
});
avalon.scan(document.body);
<div ms-controller="xxxxCtrl">
    <h2 ms-text="version"><h2>
    <ul>
        <li ms-repeat-item1="xxxxCollection.data" ms-text="item1.value"><li>
    </ul>
</div>

1.1 AngularJs原型

$scope.vm = {
    version: '1.0',
    xxxxCollection:{
        data: [ 
            { value:'value1' },{ value:'value2' },{ value:'value3' }
        ],
        count: 3
        OnClick: function(){
            var self = vm.xxxxCollection;
        },
        Init: function(){

        }
    }
};
<div>
    <h2 ng-bind="vm.version"><h2>
    <ul>
        <li ms-repeat="item1 in vm.xxxxCollection.data" ng-bind="item1.value"><li>
    </ul>
</div>

2. 命名规则和语法

  • 所有字符串必须使用单引号
  • 属性必须以小写开头,并以驼峰式命名法,例:isPass、name
  • 方法必须以大写开头,并以驼峰式命名法,例:OnClickSave、OnSearch
  • vm对象集合必须以Collection结尾,元素内部必须使用datacount初始化。例:xxxxCollection

3. 参考资料

4. 练习

  • 按以上规则对比AngularJS和AvalonJs常用属性和方法,例如:
    • 显示、隐藏
    • if绑定
    • 双向绑定
    • repeat循环
    • 下拉列表的绑定
    • attribute绑定
    • class绑定
    • style绑定
    • href绑定
    • src绑定
    • 常用事件绑定
      ...
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,206评论 19 139
  • AngularJS是什么?AngularJs(后面就简称ng了)是一个用于设计动态web应用的结构框架。首先,它是...
    200813阅读 1,668评论 0 3
  • iOS编程规范0规范 0.1前言 为􏰀高产品代码质量,指导广大软件开发人员编写出简洁、可维护、可靠、可 测试、高效...
    iOS行者阅读 4,512评论 21 35
  • 推荐文章:禅与 Objective-C 编程艺 前言 为􏰀高产品代码质量,指导广大软件开发人员编写出简洁、可维护、...
    WolfTin阅读 2,843评论 0 1
  • ios layout机制相关方法 - (CGSize)sizeThatFits:(CGSize)size - (v...
    RunningMan_Fly阅读 185评论 0 0