Remax

简介: Remax 是一款基于 Vue.js 的微信小程序开发框架,它提供了一套简洁、完整的 API,让开发者能够快速、高效地开发出功能丰富、性能优良的微信小程序。

Remax 是一款基于 Vue.js 的微信小程序开发框架,它提供了一套简洁、完整的 API,让开发者能够快速、高效地开发出功能丰富、性能优良的微信小程序。需要先掌握 Vue.js 的开发基础,包括 JavaScript、Vue、CSS 等。然后可以通过 Remax 官方文档或者一些在线教程学习 Remax 的使用方法。以下是一些学习 Remax 的推荐资料: 1. Remax 官方文档:
https ://remax-docs.jd.com/remax/docs/GETTING-STARTED

  1. Remax 入门教程:https: //juejin.cn/post/6844903847140646926
  2. Remax 实战教程:https://remax-docs.jd .com/remax/docs/EXAMPLES

希望这些资料能够帮助你学习 Remax。
关于 Remax 的演示,你可以访问 Remax 官方演示网站(https://demos.remax-docs.jd.com/)浏览各种类型的演示,包括电商、社交、教育、新闻等。这些演示能够帮助您更好地了解 Remax 的应用场景和开发能力。

Remax - 使用真正的 React 构建小程序
yesmeck
2019-08-26 11:24
2613

关注
为什么要用 React 来构建小程序
Learn once, write anywhere.

因为 React 是我们最熟悉的技术。

小程序糟糕的 API 设计已经有很多文章吐槽,这里就不再赘述了。再加上现在一大堆小程序平台,每个平台之间又有大大小小的差异,这对于有跨平台需求的小程序来说无异于是一场灾难。

React 的社区生态体系非常庞大,通过在小程序中引入 React 以及 React Hooks 提供的逻辑抽象能力,我们可以在小程序中直接利用 React 生态体系中大量的技术沉淀(比如:react-use、field-form)。

更完整的 TypeScript 支持。当然你也可以用 TypeScript 去写现有的小程序,但是由于小程序的架构原因,模板层跟逻辑层(也就是 Page)有天然的割裂,即使在逻辑层使用了 TypeScript,在模板层也无法享受类型检查和自动补全带来的便利。引入 React 后,我们的代码全部运行在逻辑层中,可以全程静态类型护航,给你满满的安全感。

现有的方案
目前社区中使用 React 构建小程序的方案大都使用静态编译的方式实现。所谓静态编译,就是使用工具把代码语法分析一遍,把其中的 JSX 部分和逻辑部分抽取出来,分别生产小程序的模板和 Page 定义。

这种方案最大的问题就是会有很多限制,因为语法分析是静态的,所以这些方案都会去限制一些动态的写法。另外正是因为 JavaScript 语言的动态性,要去做语法分析本身就是件很复杂的事情,所以这些方案实现起来往往也非常复杂。

最重要的,静态编译后的你的代码就转换成了小程序代码,运行时其实并没有 React 的存在,你只是用了 React 的写法, 而不是真正的在用 React 做应用。

我们的方案
今年初的时候,@xcodebuild 向大家介绍了如何在小程序中使用 React with Hooks。这是一个非常创新的方案,我们在对这个方案做了完善,并且在线上小程序中得到验证后,正式发布了基于 React 的小程序开发框架:

Remax
www.remaxjs.org

Remax 让你可以使用真正的 React 去构建小程序,你可以他理解成面向小程序的 React Native。

Remax 原理
首选来看一下小程序的架构(支付宝和微信大同小异):

小程序架构
正如上面提到的,小程序架构分为两层,你写的逻辑代码独立运行在一个进程中,每个页面会有自己独立的渲染进程(也就是一个 webview)用来渲染模板。而整个小程序又运行在 APP 容器中(也就是支付宝和微信本身)。逻辑层和视图层之间通过建立一个消息通道来通信。

再来看下 React 的架构:

React 架构
最下面一层是 React 本身,上层的 ReactDOM 和 ReactNative 我们称之为「Renderer」。Renderer 跟 React 之间通过 ReactReconciler 连接把元素(也就是通常所说的「虚拟 DOM」)渲染到对应的平台上。而 Remax 就是一个我们实现的 Renderer,它把「虚拟 DOM」渲染到了小程序的视图层上。

Remax 架构
可以看到,我们把 React 和 ReactReconciler 运行在小程序的逻辑层中,并通过 Remax 把生成的「虚拟 DOM」渲染到视图层。从而做到了使用真正的 React 去构建小程序。

目录
相关文章
|
负载均衡 架构师 Java
详细讲解OpenFeign的使用姿势!
学会使用Feign最贱优雅地调用服务
23977 9
详细讲解OpenFeign的使用姿势!
|
2月前
|
人工智能 IDE 开发工具
全新 Qoder 线上发布会,今晚 19:00 不见不散!
9月1日19:00,Qoder线上发布会直播!聚焦全新 Qoder,产品、研发、设计三位成员深度解读,助你厘清 Qoder IDE与新 Qoder 的适用场景。锁定视频号「Qoder.ai」
268 1
|
7月前
|
人工智能 自然语言处理 监控
阿里云JVS Claw是什么?JVS Claw“养虾”功能与优势,免费体验版和最新包年包月优惠
阿里云JVS Claw是“云上养虾神器”,可简化大模型使用流程,支持零门槛创建、管理和优化AI智能体。其核心功能包括一键接入OpenClaw、多端协同操作、提供安全隔离环境及自进化技能体系,满足企业及个人智能化需求。新用户可享7天免费体验,首月39元起,且提供包月包年优惠。此外,用户也可选用轻量云服务器部署OpenClaw,有多个规格的云服务器可供选择。
|
设计模式 Java Apache
Springboot项目优化日志logback-spring.xml详解
Commons Logging和Slf4j是日志门面(门面模式是软件工程中常用的一种软件设计模式,也被称为正面模式、外观模式。它为子系统中的一组接口提供一个统一的高层接 口,使 得子系统更容易使用)。log4j和Logback则是具体的日志实现方案。可以简单的理解为接口与接口的实现,调用这只需要关注接口而无需关注具体的实现,做到解耦
3238 0
Springboot项目优化日志logback-spring.xml详解
|
9月前
|
人工智能 监控 API
AI 软件的开发流程
AI开发非线性,以数据为中心、持续迭代。2026标准流程含8步:场景评估→知识库构建→Prompt与Agent编排→多模型测试→工具集成→幻觉检测→端侧优化→监控闭环。重数据、强工程、重反馈。#AI应用 #AI开发
|
11月前
|
安全 CDN
阿里云 ESA (边缘安全加速) 中国站免费版 开放申请 (免费CDN)
阿里云ESA免费版现支持中国站用户申请,提供无限流量和国内节点加速(需备案),媲美无限制CDN,显著提升访问速度,告别Cloudflare国内慢速问题。立即免费开通体验。
3167 12
|
存储 Java 关系型数据库
Spring Boot中Spring Data JPA的常用注解
Spring Data JPA通过注解简化数据库操作,实现实体与表的映射。常用注解包括:`@Entity`、`@Table`定义表结构;`@Id`、`@GeneratedValue`配置主键策略;`@Column`、`@Transient`控制字段映射;`@OneToOne`、`@OneToMany`等处理关联关系;`@Enumerated`、`@NamedQuery`支持枚举与命名查询。合理使用可提升开发效率与代码可维护性。(238字)
904 1
|
人工智能 移动开发 前端开发
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
蚂蚁团队推出的AI前端研发平台WeaveFox,能够根据设计图直接生成前端源代码,支持多种应用类型和技术栈,提升开发效率和质量。本文将详细介绍WeaveFox的功能、技术原理及应用场景。
8096 68
WeaveFox:蚂蚁集团推出 AI 前端智能研发平台,能够根据设计图直接生成源代码,支持多种客户端和技术栈
|
IDE API 开发工具
Gleam
Gleam 是面向 Erlang 虚拟机的类型化语言,Gleam 的语法对于类型化语言来说非常优雅和简单。如果能看到 Gleam 像 Elixir 一样成功,那就太酷了。
1204 4
|
Java iOS开发 MacOS
MacOS切换JDK版本
MacOS切换JDK版本
7115 0