-
一个用于开发前端模块化 UI 组件的轻量级 JavaScript MVVM 库/框架
-
简单的模块化组件开发方式;视图组件自带模板功能(支持异步请求)和 mvvm 模式
-
框架分为两个独立的部分:
sugar
(实现组件系统) 和mvvm
(实现数据绑定 + 视图刷新)
-
test/
单元测试以及其他测试用例 -
build/
开发、测试和打包配置文件目录 -
demos/
用 sugar.js 做的一些完整例子 -
dist/
打包好的 sugar.js 和 mvvm.js 以及各自的压缩版本 -
src/
源代码文件目录:
demos/
目录做了些示例,也可在线预览效果:
在 jsfiddle 上编辑一个可复用的 radio
组件
-
引用方式:
sugar.js
和mvvm.js
均支持cmd
amd
以及script
标签引用sugar (约 39 kb)
http://tangbc.github.io/sugar/dist/sugar.min.jsmvvm (约 31 kb)
http://tangbc.github.io/sugar/dist/mvvm.min.js
-
浏览器支持:不支持 IE8 及以下 (用了
Object.defineProperty
和Object.create
等)
v1.0
sugar
基础的组件系统和模块化创建方式mvvm
支持基础数据模型指令(静态表达式)
v1.0.2
mvvm
支持动态指令表达式:<div v-text="isError ? err_msg : suc_msg"></div>
v1.0.4
mvvm
细节化 v-for 指令的 splice 操作
v1.0.6
mvvm
修复多个问题,增加指令表达式依赖提取和更新视图的稳定性
v1.0.8
mvvm
v-bind 指令用于更新 object/json 时支持简单的 diff 差异对比
v1.1.0
- 摈弃 requirejs 的代码组织方式(v1.0.8)Test-runner 采用 Karma,增加测试覆盖率的统计
v1.1.2
- rollup, babel, es6 搞起!
-
拉取代码:
git clone https://github.com/tangbc/sugar.git
-
安装开发测试所需的 Nodejs 包:
npm install
-
开发调试
sugar
:npm run dev-sugar
-
开发调试
mvvm
:npm run dev-mvvm
-
进行单元测试:
npm run test
-
生成测试覆盖率统计文件:
npm run cover
-
打包压缩项目代码:
npm run pack