1.不要设计,也不要通过DOM操作去改变你的页面

你用jQuery去设计一个页面,并让它动起来。这是因为jQuery就是让一切简单的事情变复杂的罪魁祸首。

但是用avalon,你必须从零开始去构思你的架构。"我有这么一些DOM,我想要它去做XXX",不,你不该这么想,你首先应该想到你要完成的是什么,
然后去设计你的整个应用,最后去设计你的view。

2.不要在avalon的代码里混杂着jQuery代码

不要首先想到用jQuery去解决问题。首先想到的应当是avalon的VM与$watch。
你刚开始学avalon的时候jQuery特别诱人,所以我才建议新的avalon开发者坚决不用jQuery,
至少等到你能够按MVVM的方式去处理问题时再说吧。

3.要一直想着架构

首先你要明白,SPA(single-page applications)也是applications。不是零散的网页。
因此我们不能仅仅从客户端开发者的角度去考虑,还需要把自己当成服务器端工程师。
我们要想这把我们的application分离成独立的,可扩展的,可供测试的组件。

为了达到这一点,你要把你重复利用的视图独立成一个模板,通过ms-include引入。
你要把你经常用到的方法,封装成VM的一个个方法或过滤器。
你要学会切割页面
,让它交由不同的ms-controller来处理。
你要学会使用mmRouter,路由器是你掌握SPA的证明。
你要学会用ms-widget封装UI组件,这是对你未来的投资!

最新文章

  1. Red Gate(SQLToolbelt)SQL Server的安装与注册(破解)
  2. 谈谈JAVA工程狮面试中经常遇到的面试题目------什么是MVC设计模式
  3. Spark源码学习1.4——MapOutputTracker.scala
  4. docker swarm
  5. iOS多线程邂逅
  6. Qt 5.4 OpenCV 2.4.11 Win 32 Configuration
  7. git rm –cached filename
  8. SetWindowHookEx 做消息响应
  9. C语言中fseek函数
  10. JS模块化工具requirejs教程(二):基本知识
  11. MapReduce读取hdfs上文件,建立词频的倒排索引到Hbase
  12. 增强的for循环(或foreach)
  13. cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写下
  14. CentOS 7安装配置Apache HTTP Server
  15. 齐博cms 7.0 漏洞分析
  16. java基础知识6-- 抽象类,抽象方法,接口,构造方法,类方法等易混淆的知识点
  17. aos.css 动画效果
  18. python 读取文件read.csv报错 OSError: Initializing from file failed
  19. Java中有哪些语法糖?
  20. 每个Android开发者必须知道的内存管理知识

热门文章

  1. BZOJ4818 LOJ2002 SDOI2017 序列计数 【矩阵快速幂优化DP】*
  2. winform 多线程中ShowDialog()无效的解决办法
  3. c++重在运算符前置自增和后置自增
  4. Vim自动补全插件----YouCompleteMe安装与配置
  5. linux-docker安装
  6. 安装Zookeeper(单机版)
  7. 基于Oracle的EntityFramework的WEBAPI2的实现(一)——准备工作
  8. CodeForces - 963B Destruction of a Tree (dfs+思维题)
  9. 杂项:HTML5-2/3-新元素
  10. [转]Oracle 连接dll