当 ReactJS 遇到 TypeScript
2024-10-09 23:45:48
由于本人应用项目主要是2B的web应用程序, 所以以下暂不谈react的服务端渲染和react navie,
先说说ReactJS:
- React 的组件化和 数据单向绑定 的模式(flux) 使应用程序更易于开发和维护。
- 相对于angular,Ember这种全面的框架,react 比较轻量级(非包大小),这样比较容易在其基础上架构应用或者配合其他功能库。
- 视图层的JSX无缝混合js代码,功能强大又不失可读性,可以说是集成了声明式编程和命令式编程的优点。
- 框架支持增量更新DOM的特性能有效保证程序的性能,通俗点说,就是不容易让一般水平的人写出性能糟糕的程序,这一点对于组织大型复杂的应用程序来说是很重要的。
再说说TypeScript
- 静态类型的编程语言更有利于工程化的一个原因是,更能被IDE充分的支持。宇宙最强IDE的VisualStudio 不只给TypeScript带来了很好的编程体验,近视于C#的方式实现了代码模块化 同时又能保留js动态语言灵活性,
- 一键生成解决了编译压缩的问题。
- TSX对于React的JSX也提供了很好的支持。
使用ReactJS 和 TypeScrit 一段时间,总结了自认为一些比较实用的Tip,跟各位分享,望能起到抛砖引玉的作用 ,高手不吝赐教 :
1.如何打包成单个js
使用r.js 与VS 编译集成。当然在开发阶段这部分可以省略。
2. 组件化使用面向对象的方式,参考winform 和 webform
面向对象的方式定义React组件(图)
组件基类:
已经写好的控件
3.使用消息机制来解耦
组件之间的通信,尽量不要互相引用,通过消息机制来完成。
Flux的思路也是如此,可以不需要直接使用flux库,如果掌握了flux的核心思路,用任何一个js事件消息库都可以。
这边用的是EventEmitter2库
4.自己定义路由机制
5.使用后端编程的插件机制来解耦
由于JS的动态语言特性,原生支持插件。所以只需要做一些少量封装,就可以实现简单实用的IOC插件功能。
控件注册:
最新文章
- CentOS 7 Git安装
- Jstorm可靠性分析
- C# 类型基础
- 那么小伙伴么,问题来了,WPF中,控件的Width=";*";在后台怎么写?
- 第二百四十八天 how can I 坚持
- RibbonForm使用技巧
- 面试题:HTTP与HTTPS
- [LeetCode] Next Greater Element I 下一个较大的元素之一
- U盘快速启动热键
- git ssh https 踩坑记 ---- 域账号密码更新
- Android 2018最新验证手机号正则表达式
- Unity2017五子棋大战_人机_双人_UNET联网
- unity实现一个物体绕着某点旋转
- 2.4 Oracle之DCL的SQL语句之用户权限以及三大范式
- leetcode 72 编辑距离 JAVA
- Linux上安装Oracle11g
- Lucene学习入门——核心类API
- JQuery利用选择器定位动态id?
- Matlab princomp函数浅析
- 求矩阵的n次方 c语言实现