Skip to content

Tiny-Fendy/myMVVM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My MVVM

做一下双向数据绑定玩玩

一点想法

造这个小轮的目的,一方面是希望把这作为了解前端MVVM框架实现原理的切入点,另一方面也是可以更多的 了解一下原生JS的DOM操作。

自己目前的水平还无法完全重新设计一个框架,所以语法上会参照现在热门的前端框架VUE。

已经实现的标签和功能

  1. 嵌套对象解析
  2. f-model
  3. f-text && {{}}
  4. f-for #已经能够获取到内部作用域的值
  5. f-if #支持变量、布尔值、数字,暂时不支持逻辑运算符以及==、===等表达式
  6. f-show #同f-if
  7. f-hide #同f-if
  8. f-on #支持原生DOM事件 #支持传入参解析,包括$event, 数字,字符串,变量 #暂不支持传入$index等值

目前正在做的

监听数组变化,实现7个数组处理方法

  • push()
  • pop()
  • shift()
  • unshift()
  • splice()
  • sort() #有点想试一下快速排序
  • reverse()

TODOList

  1. 实现$watcher方法,可以从外部监听data属性变化
  2. 解决HTML模板中的作用域问题,在作用域内获取不到值时到根data上寻找值
  3. 处理同一个节点多个指令的执行优先级
  4. f-for作用域下支持$index等参数
  5. 代码重构,优化结构
  6. 逻辑运算符解析

About

自己做一下双向数据绑定玩玩

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published