小程序也可以写 React Hooks

2019-01-14 10:47:59 +08:00
 xcodebuild

原文地址在:https://zhuanlan.zhihu.com/p/54795961

步入 9201 年所以一时心血来潮想写个小程序玩一玩,但是开发过程中发现各种难受,于是看了一下现有的各种方案。最后还是决定把 React.js 直接搬到小程序里面运行。

和 taro 等方案不同的是,这个方案运行的是真正的 React.js 和真正意义上的 JSX,意味着你在书写 JSX 的时候不会有各种奇怪的限制,也完全可以使用 React Hooks.

项目地址:https://github.com/CodeFalling/remax

4043 次点击
所在节点    分享创造
17 条回复
CodingPuppy
2019-01-14 11:06:39 +08:00
支持
jeremaihloo
2019-01-14 11:09:10 +08:00
支持
7sDream
2019-01-14 11:20:48 +08:00
老哥牛皮呀。最近正好想试下小程序是怎么开发的。

Emmm,不过我不会前端,让我先学学 React 再来用这个试试。
xcodebuild
2019-01-14 11:25:53 +08:00
@7sDream 先学习一下 ES + Babel + Webpack + React + JSX + Redux + ... :doge
ilumer
2019-01-14 11:54:30 +08:00
支持搞个大新闻
walter211
2019-01-14 12:33:07 +08:00
碉堡了
helsonxiao
2019-01-14 12:42:42 +08:00
资瓷
Geeker
2019-01-14 12:48:45 +08:00
蛇神还是 6,我前两天用了下 taro,最后放弃还是写原生小程序了。
xcodebuild
2019-01-14 12:53:22 +08:00
@Geeker 因为把 JSX 当模板写这个思路很怪异,说来小程序还不如一开始就支持用 React 或者 Vue 写,现在的原生写法太难受了
isbase
2019-01-14 17:30:58 +08:00
大概试用了下,很不错,实现自定义 react renderer 才是王道,

现有的各种小程序框架实在太过蹩脚
pkm
2019-01-14 17:49:28 +08:00
赞~
xcodebuild
2019-01-14 18:36:19 +08:00
@isbase 唉说到底还是小程序自己非要搞事情,想隔离渲染线程直接用 react-worker 类似的方案不就行了,非要强行割裂一个平台出来
wobuhuicode
2019-01-14 19:38:02 +08:00
@codefalling 小程序的逻辑在原生 IOS 开发来说是合理的。JS 运行在 jscore 的 rutime 中,当 OC eval JS 去执行的话,是在主线程执行的,而写在模版的最终渲染到 HTML 去,这里面的渲染逻辑( HTML 内部 JS 的执行逻辑)是非主线程的。
xcodebuild
2019-01-14 19:40:17 +08:00
@wobuhuicode react-worker 就满足这样的条件
wobuhuicode
2019-01-14 19:47:46 +08:00
@codefalling 从线程来说或许可以这样。不过从小程序最初的架构来说,每一个页面都是一个新的 viewController 创建的 webview。如果按照传统的 web 页面开发,其中的逻辑肯定会被隔离。为了保持开发的时候逻辑的一致,我们写的 js 代码是会由一个独立的 jsCore 去运行
Sparetire
2019-01-15 03:09:05 +08:00
大佬。。
ql9075
2019-01-17 11:25:57 +08:00
666

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/526783

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX