https://github.com/dailc/mini-mvvm
mvvm模式源码分析,还原一个极简版的双向绑定框架。
https://github.com/dailc/mini-mvvm
Last synced: 10 months ago
JSON representation
mvvm模式源码分析,还原一个极简版的双向绑定框架。
- Host: GitHub
- URL: https://github.com/dailc/mini-mvvm
- Owner: dailc
- License: mit
- Created: 2018-01-27T12:28:11.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-02-05T10:28:15.000Z (over 8 years ago)
- Last Synced: 2024-01-15T00:20:31.688Z (over 2 years ago)
- Language: HTML
- Size: 34.2 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mini-mvvm
mvvm模式源码分析,还原一个极简版的双向绑定框架。
## 极简版MVVM示例
这是 hello world 级别的,应该找不到比这更简单的MVVM示例了
hello world系列。
可以分别展开讲述下,从最简单,到后来的一步一步增加
- mvvm_helloworld.html:最原始的mvvm,仅仅有简单的mvvm功能
- mvvm_helloworld2_deep.html:深度递归,可以递归对对象进行监听
- mvvm_helloworld3_event.html:增加了监听的事件绑定,如click等
- mvvm_helloworld4_watch.html:增加了对数据的watch功能
- mvvm_helloworld5_watchergetter.html:重新组织了下代码,优化了下结构
- mvvm_helloworld6_computed.html:增加计算元素功能
- mvvm_helloworld7_class.html:增加普通html、css样式的绑定
- mvvm_helloworld8_list.html:增加支持列表指令以及模版的渲染(没有考虑优化)
- mvvm_helloworld9_if.html:增加if指令的支持
- summary:最后总结归纳了下,拆分为多个文件,便于整体梳理。
基本上,一套走下来,会发现核心仍然是MVVM以及数据监听、DOM劫持等,其余的指令更多的都是附加,并不影响对整体的理解
## AST&VDOM
预计新增AST以及Virtual-Dom功能
[helloworld/mvvm_helloworld.html](helloworld/mvvm_helloworld.html)