开发者社区> 知与谁同> 正文

RegularJS 0.2.12 发布,JavaScript MVC 框架

简介:
+关注继续查看

RegularJS 0.2.12 发布,此版本现已提供下载。

看到 regular 的名字就能感受到扑面而来的山寨味,在开始前,我还是要说明下regularjs出现绝对不仅仅是作者的造轮子情绪泛滥的结果

Angularjs的火爆以及它的小伙伴们

Angularjs从 12年开始开始火爆起来, 数据驱动的业务实现方式也由此深入人心, 它的数据更新策略基于脏检查,在明确内部的生命周期后在数据绑定的使用上是最为灵活的(即这种方式不介意是何种方式促使数据改变,而只关心数据改变的结 果),作者本人以及周围的小伙伴也开始为之着迷. 随着使用的深入, 发现angularjs的强大特性也引出了一些无法攻克的不足:

由于本身生命周期的强约束,难以与其它框架公用

入门容易,深入难 —— 想想directive一个feature就涉及到的 postlink prelink controller compile scope等等概念.

模板的逻辑实现依赖的是directive(ng-repeat, ng-if etc..),即最小逻辑颗粒是节点, 与常规的模板自由度上还是有较大差异.

FOUC(Flash of unstyled content), 因为angular是先通过浏览器(innerHTML)生成了dom,再后置link来产生真正需要的元素,所以会导致内容闪动.regular也没有 完美的解决问题(因为内容仍然是前端render的),但是可以保证进入文档的节点就是预期的节点

除此之外,Angularjs的核心是scope对象, 业务的实现大部分都是在scope上动态添加函数或属性. 也有人提出整个controller的写法缺乏约束性,这个时候angular-classy出现, 它将原本因挂载在scope上的业务逻辑转移到构造函数原型的形式, 减少了灵活度,但是更有约束性, 这也给了regular很大灵感.

在angular大行其道的时期也激励产生了很多框架,比如vue.js、avalon.js、reactive等 等优秀的框架,它们解决了一些问题, 比如avalon.js利用defineProperty实现了数据get-set的代理 并利用VB实现了ie6的兼容(当然数组还是wrap), 但总体来讲基于dom实现的新秀们还是缺少足够的差异化(代码量的减少并不是最核心的部分)

文章转载自 开源中国社区 [http://www.oschina.net]

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Yii2.0框架的MVC架构是如何设计的?它的流程是什么样的?
Yii2.0框架的MVC架构是如何设计的?它的流程是什么样的?
13 0
Unity之MVC思想(通过普通方法和使用MVC思想完成同一个小案例:掌握MVC简单框架)
Unity之MVC思想(通过普通方法和使用MVC思想完成同一个小案例:掌握MVC简单框架)
21 0
Spring MVC框架:第十七章:异常映射
Spring MVC框架:第十七章:异常映射
12 0
Spring MVC框架:第十六章:细节了解
Spring MVC框架:第十六章:细节了解
40 0
Spring MVC框架:第十五章:多IOC容器整合
Spring MVC框架:第十五章:多IOC容器整合
33 0
Spring MVC框架:第十四章:数据校验
Spring MVC框架:第十四章:数据校验
36 0
Spring MVC框架:第十三章:类型转换
Spring MVC框架:第十三章:类型转换
39 0
Spring MVC框架:第十二章:运行原理
Spring MVC框架:第十二章:运行原理
48 0
Spring MVC框架:第十一章:Ajax
Spring MVC框架:第十一章:Ajax
36 0
Spring MVC框架:第十章:拦截器
Spring MVC框架:第十章:拦截器
19 0
+关注
知与谁同
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Javascript异步编程
立即下载
Java Spring Boot开发实战系列课程【第7讲】:Spring Boot 2.0安全机制与MVC身份验证实战(Java面试题)
立即下载
JS零基础入门教程(上册)
立即下载