概述
SPA是为构建WebApp设计的路由控制和视图转换框架
SPA专注于解决构建WebApp时遇到的共性问题,尤其适用于构建MobileApp,我们和jQueryMobile、SenchaTouch等框架不同,并不是一个构建移动端应用的前端整体解决方案,所以我们不包含UI组件,如果你不想自己设计界面,可以用Bootstrap、Topcoat等UIComponents框架配合SPA,来快速构建你的WebApp;
SPA依赖jQuery或Zepto,并且每个视图可以通过RequireJS、Sea.js等CommonJS解决方案或者自定义的方式进行模块化组织、异步加载;
SPA支持移动端和桌面端的现代浏览器;
为什么使用SPA提供快速的开发实现你可以像开发传统网站一样,先设计并制作每个视图,比如页面、导航、对话框等等,然后通过SPA提供的接口把每个视图拼装组织,完成一个拥有NativeApp体验的WebApp;
保留更大的设计自由度SPA相对于jQueryMobile和SenchaTouch等框架,SPA是非常轻量级的,我们只关心并解决WebApp的路由控制和视图转换等共性问题,每个场景被模拟成一个节点,场景内的具体界面和交互设计完全交给开发者;
减少后端依赖视图的渲染和路由是在前端完成的,后端只需要提供一个简单的入口页面(Single-pageapplication)和应用所需的异步数据接口;如果再配合使用javascript模版,还可以最大化的利用前端缓存,减少网络流量请求;
事件驱动SPA不提供类、对象或函数库,利用jQuery的自定义事件和事件代理,SPA的接口都绑定到DOM上,所有的操作都是触发相关DOM上的自定义事件,将各个视图的代码解耦隔离,降低开发复杂度,这个特性和Flight框架一致。
评论