前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Strve.js这样写法像不像React?

Strve.js这样写法像不像React?

作者头像
Vam的金豆之路
发布2022-03-30 18:47:45
2.1K0
发布2022-03-30 18:47:45
举报
文章被收录于专栏:前端历劫之路前端历劫之路

第一次在手机上写文章,觉得别有一番风趣。上周自己抽时间把Strve.js升级了一下,现在目前版本是2.3.3。有兴趣的朋友可以去官方文档查阅一下。说到官方文档,之前有位朋友说我的文档缺乏可视化界面,就是那种在线编辑插件。这位朋友提的建议很不错,就去网上调研了一下,最后选定了Codepen。选定它的原因是我只是单独的页面展示,这样简单就足够了。

其次,最近连续更新了两个版本:2.3.3和2.3.2,下面我们来看看这两个版本的更新日志。

v2.3.3

  • StrveAPI的参数调整;

v2.3.2

  • HTML标签内容支持显示非字符串类型;
  • 数据绑定统一使用${}符号绑定,不再支持{}符号;
  • 视图模板支持多个根节点;
  • 视图模板支持Text节点;
  • 修复条件渲染时切换状态,无法正确渲染节点;
  • 增加watchDOMChangeAPI,用于监视DOM树变化;
  • 增加支持HTML模板字符串高亮显示(VSCode编辑器需安装 es6-string-html 插件);
  • 删除StrveAPI的data属性参数;
  • 视图模板支持Class类写法;

这次改动也挺大的,主要是内部的整体优化。

比如,借鉴了Vue的v-if指令内部思想实现了条件渲染,利用注释节点实现DOM占位,这一点我觉得非常值得学习。

但是还是遇到了问题,那就是虚拟DOM量级的问题,因为Strve.js内部跟React.js相似,都是数据变化后,通过新老数据的计算 Diff 来得知数据的变化。React.js为了突破性能瓶颈,借鉴了操作系统时间分片的概念,引入了 Fiber 架构。通俗来说,就是把整个虚拟 DOM 树微观化,变成链表,然后我们利用浏览器的空闲时间计算 Diff。一旦浏览器有需求,我们可以把没计算完的任务放在一旁,把主进程控制权还给浏览器,等待浏览器下次空闲。

不过,我相信在之后会慢慢解决这个问题。在上面我们说到React.js,我们常用的方式就是在Class类中写JSX。那么,使用Strve.js其实也可以。

(图一)

(图二​)

Strve.js这次升级的亮点还有很多,可以打开优化后的官方文档查阅,以下有两种方式可供选择(复制以下地址到浏览器)。

1、(中文官方文档)

https://maomincoding.github.io/strvejs-doc/zh/

2、(国内站点)

https://www.maomin.club/site/strvejs/zh/

最近一段时间,Strve.js将不会有大版本的升级,我想先休息一下,然后把精力放在其他学习上面。

不过,大家要是有什么建议,可以在Github上面提issue。

Github地址:

https://github.com/maomincoding/strve

文章结束,谢谢阅读!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端历劫之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • v2.3.3
  • v2.3.2
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档