Skip to content
TANG edited this page Oct 14, 2017 · 16 revisions

Q & A

  • Q: sugar.js 是做什么用的?

A: 没有全家桶,如果你只需要一个简单容易的 MVVM 的框架,那么这将会很合适你。

  • Q: sugar.js 与同类框架有什么不同?

A: 组件系统和 MVVM 指令系统有整合也有独立,方便按需移植到所需的开发业务中。

  • Q: sugar.js 是个轮子吗?

A: 是!是一个实现比较完整的轮子,指令系统功能齐全,已经有在生产环境中使用验证。

特点

  • 体积轻量 API 简单

  • 模块化/组件化前端工程

  • 视图组件可复用、可继承,方便开发和维护

  • 视图组件支持消息通信、组件嵌套、MVVM 和模板布局

使用场景

  • 适合用于开发 DOM 操作频繁、数据驱动视图、拥有组件、组件通信等需求的页面;

  • 适合用于开发一些简单的小型 Web 应用,如 TodoList、贪吃蛇游戏、网页万年历等等;

引用方式

CMD

var MVVM = require('path/to/mvvm.min');
var Sugar = require('path/to/sugar.min');

AMD

require([
	'path/to/mvvm.min',
	'path/to/sugar.min'
], function (MVVM, Sugar) {
   //
});

Global

<script type="text/javascript" src="path/to/mvvm.min.js"></script>
<script type="text/javascript" src="path/to/sugar.min.js"></script>
<script type="text/javascript">
  var vm = new MVVM({/*...*/});
  var Component = Sugar.Component;
</script>

兼容性

不支持 IE8 及以下 (用了 Object.defineProperty Object.create 等 ES5 特性),支持主流桌面和移动设备浏览器。

视图更新效率

预览地址

jsfiddle:


下一篇:组件定义与创建