avalon教程-简介

avalon是什么?

  avalon是一个MVVM框架, Modle-模型层,即为js中从后台接口中取出的数据,例如一个对象或者对象数组,并对这些数据进行一定的格式化。常见的返回数据是这样的{id : 1, name: "%E5%BC%A0%E4%B8%89", birthday : "1467646548"},我们需要把数据转化成为比较规则的数据,像这样{id : 1, name : "张三", birthday : "2016-07-03"},这些数据和处理这些数据的逻辑统称为M层。View-视图层就比较好理解了,即为HTML标签和DOM元素。VM-视图模型层:ViewModel,为连接M和V的一个桥梁,单独有M和V是不能做出什么功能的,需要把M和V连接起来,像在avalon中定义一个数组:userArr = ["zs", "lisi"],在HTML中我们这样写<li ms-repeat="userArr">{{el}}</li>,即可。

我们为什么需要MVVM框架?

  MVVM框架做的最主要的功能就是逻辑和显示分离,即M和V的分离。不管我们用原生的js还是jQuery,业务中混合大量的DOM操作,例如js中拼接HTML,id选择器,层级选择器,下级拼接的DOM依赖上次拼接的DOM……这样做的坏处很明显,1.使业务逻辑不专注,不易管理,例如在写代码的时候,处理一会数据,接着又需要拼接一堆HTML代码,写起来可能还容易些,但是供人读或者后期维护带来非常多的困难;2.业务逻辑和视图层高度耦合,例如这样的代码:$("#div .ul_class li"),实现的功能是id为div的下面的class为.ul_class下面的所有li,这样一层一层的定位DOM,如果其中层级关系改变了呢?某一个元素的id或者class改变了呢?我们是不是需要需要修改我们的DOM元素的查找方式,如果多处我们还需要全局查找id或者class,全局替换,维护成本非常高;尤其现在网站改版已经生了家常便饭,完全使用这种方式,你的代码可能80%都需要重写,这是事实。

为什么选择avalon?

  除了可以使视图和显示完全分离这个最大的好处之外,还有如下好处

  1.和angularjs相比,avalon支持老版本的IE浏览器,如IE6、7。

  2.入门简单,快速上手,减少学习成本

  3.使用avalon之后,可以不用requirejs了,因为avalon自带加载器(当然也可禁用)

  4.可以和jQuery和平同处,现在我的项目中,jQuery只负责Ajax操作和Animation实现,其他功能都不用

时间: 2024-10-17 10:20:14

avalon教程-简介的相关文章

01.01教程简介01.02软件的基本工作界面01.03模型设计的一般过程

xue.taoao.com 我的学习记录 01.01教程简介 --- 01.02软件的基本工作界面 - 任务窗口 拖拽到实例中 - 底部显示单位 - 确定当前环境 - 放大缩小 - 鼠标旋转缩放移动 --- 01.03模型设计的一般过程 ----- 原有凸台基础上    插入一个凸台 进入草图环境  选择原有凸台的一个面为基准面   空格  正视于    画一个圆形 - 智能尺寸-标注并且同时设置尺寸 - - 拉伸切 和凸台一样     拉伸切除-选择基准面进入草图   正视于  画圆  给定深

20181019-JSP 教程/简介

JSP 教程 这是第一篇JSP JSP与PHP.ASP.ASP.NET等语言类似,运行在服务端的语言. JSP(全称Java Server Pages)是由Sun Microsystems公司倡导和许多公司参与共同创建的一种使软件开发者可以响应客户端请求,而动态生成HTML.XML或其他格式文档的Web网页的技术标准. JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序. JSP文件后缀名为(*.jsp). JSP开发的WE

【转载】GBDT(MART) 迭代决策树入门教程 | 简介

      转载地址:http://blog.csdn.net/w28971023/article/details/8240756        GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案.它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法.近些年更因为被用于搜索排

转:GBDT(MART) 迭代决策树入门教程 | 简介

在网上看到一篇对从代码层面理解gbdt比较好的文章,转载记录一下: GBDT(Gradient Boosting Decision Tree) 又 叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论 累加起来做最终答案.它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法.近些年更因为被用于搜索排序的机器学习模型而引起大家关注. 后记:发现GBDT除了我描述的残差版本外

css系列教程--简介及基础语法和注意事项

css简介:css指的是层叠样式表,cascading style sheets.用来定义html中的dom节点如何展示在页面中的问题.解决了内容与表现形式的分离问题.常见的样式表有外部链接样式表和内部样式表,简称,外链和内联. css基础表现形式:cssname{porerty:value} div{width:100px;} 注:样式表的声明是可以覆盖的,分为以下几种情况:1.外部样式表重新定义.在外部样式表中,定义了两次同样的名称,不同的样式属性的css,默认会以最后一次定义的为准或者最后

Robots/TurtleBot 教程简介

TirtleBot TurtleBot将流行的现成机器人组件,如iRobot Create,Yujin Robot的Kobuki,Microsoft的Kinect和Asus的Xtion Pro组合成一个用于ROS应用程序的集成开发平台. 有关硬件的详细信息,请参阅http://turtlebot.com. 1.概述 2.关于 3.前提准备 4.教程 5.应用 6.远程控制

GBDT(MART) 迭代决策树入门教程 | 简介

原文:http://blog.csdn.net/w28971023/article/details/8240756#0-tsina-1-51337-397232819ff9a47a7b7e80a40613cfe1 在网上看到一篇对从代码层面理解gbdt比较好的文章,转载记录一下: GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的

Fiddler教程--简介

目标: 了解fildder的大体功能,在以后需要的再学习 可以做什么 1.开发环境host配置 自己修改系统的host来回挺麻烦的 2.前后的接口调试 3.线上bugfix 4.性能分析和优化 5.等等... 工作原理 一个代理服务器 地址改为 127.0.0.1:8888 流模式 边走边返回 缓冲模式 http请求完成所有的数据之后,才返回 界面功能介绍 1.工具栏 从下图红色箭头所指依次开始  1.备注  备注一个url的作用 2.回放  选中一个url,然后点击这个可重新发出一次请求 3.

VB使用教程简介

Public Class Form1 #Region "[基本数据类型]" '整型(Integer,类型符%) '长整型(Long,类型符&)  '单精度浮点数( Single ) '双精度浮点数( Double ) '货币型(Currency,类型符@)  小数点后的位数是固定的,4位  ' 字节型(Byte,无类型符) '日期型(Date)  ' 逻辑型(Boolean) 非0的数据转换为true,0为fasle.  '字符串( String ,类型符$)  '对象数据类型