NutUI-React 支持 Taro 跨端应用 #241
Pinned
xiaoyatong
announced in
Announcements
Replies: 4 comments 2 replies
-
👍🏻👍🏻👍🏻 我看到npm上已经发布了@nutui/nutui-react-taro 1.3.1版本了,感觉马上可以应用到生产环境了。 |
Beta Was this translation helpful? Give feedback.
0 replies
-
@xiaoyatong 希望RN也能支持上 |
Beta Was this translation helpful? Give feedback.
2 replies
-
@xiaoyatong 请问下此库是否可以在taro的rn端使用,看到有好多pr是针对rn的优化 |
Beta Was this translation helpful? Give feedback.
0 replies
-
请问taro多端我现在用的是nutui-react-taro,在小程序端正常渲染使用,在h5端nutui-react-taro可以兼容吗? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
NutUI-React 支持 Taro 的调研
使用Taro创建一个React的项目
按照官方步骤即可。
当前版本为3.4.4
这里使用 react 框架的默认模板构建,css 预处理器使用scss编译。
并在小程序的IDE下运行该项目,运行目录要指向 dist 文件夹下。
这时,demo 完毕。
加入 NutUI-React 元素
config/index.js
config/index.js
babel.config.js
记得,安装babel-plugin-import 插件。
Plugin-HTML 不是万能的
需要处理一些特殊的样式:
1)span 默认表现为块级样式【重点关注】【有涉及,如tag、countup、checkbox、step】
这时的span,兼容了很多h5的标签写法,但是也同样给开发者带来困扰。本来想用来表示行内元素的部分,需要特别指出其样式为 inline;或者引入全套的浏览器默认样式。
抱歉,有些css选择器不支持。比如通配符*,媒体查询,属性选择器(当属性不是对应小程序组件的内置属性时)。
而这些,都是我们在支持taro开发的时候,要跟进的事情。
2)表单组件。差异较大。【关注】
3)不能同步获取元素尺寸。【有涉及,如calendaritem、collapseitem、noticebar、popover、signature、swiper、】
所以 taro 支持了一些api:【更多api去这里 todo】
4)DOM API 差异【涉及:signature】
像canvas、video、audio 这类元素,需要注意:
在小程序里需要调用组件的原生方法,需创建 Context
5)img 图片尺寸问题【涉及,card、empty、fixednav、icon、infiniteloading、popver、uploader;目前看都没有问题,待验证】
h5中,如果不设置宽高,浏览器会使用原图的宽高作为标签的宽高;在小程序里,不设置image标签的宽高时,会使用默认样式中规定的宽高。
所以,在使用img标签时,必须显式设置它的宽高。
6)暂不支持使用 SVG【检查 nuiui-iconfont】
和React 相关的不同之处
使用样式,禁止被穿透的组件滚动。
在 Taro 中 ref 的用法和 React 完全一致,但是获取到的 “DOM” 和浏览器环境还有小程序环境都有不同。
使用 React Ref 获取到的是 Taro 的虚拟 DOM,和浏览器的 DOM 相似,可以操作它的 style,调用它的 API 等。
但是 Taro 的虚拟 DOM 运行在小程序的逻辑层,并不是真实的小程序渲染层节点,它没有尺寸宽高等信息。
Beta Was this translation helpful? Give feedback.
All reactions