taro & querySelector & refs

delayQuerySelector

https://github.com/NervJS/taro-ui/blob/dev/src/common/utils.ts#L18


function delayQuerySelector(
self,
selectorStr: string,
delayTime = 500
): Promise<Array<execObject>> {
const $scope = ENV === Taro.ENV_TYPE.WEB ? self : self.$scope
const selector: SelectorQuery = Taro.createSelectorQuery().in($scope) return new Promise(resolve => {
delay(delayTime).then(() => {
selector
.select(selectorStr)
.boundingClientRect()
.exec((res: Array<execObject>) => {
resolve(res)
})
})
})
}

refs

https://nervjs.github.io/taro/docs/ref.html

https://nervjs.github.io/taro/docs/ref.html#通过函数创建-ref

函数创建 ref

// 不管在任何情况下,Taro 都推荐你使用函数的方式创建 ref

// 自定义组件, 父组件
class MyComponent extends Component { roar () {
// 会打印 `miao, miao, miao~`
this.cat.miao()
} refCat = (node) => this.cat = node // `this.cat` 会变成 `Cat` 组件实例的引用 render () {
return <Cat ref={this.refCat} />
}
} // 子组件
class Cat extends Component {
miao () {
console.log('miao, miao, miao~')
} render () {
return <View />
}
}

Taro.createRef

// 自定义组件, 父组件
class MyComponent extends Component { this.cat = Taro.createRef() roar () {
// 会打印 `miao, miao, miao~`
this.cat.current.miao()
} render () {
return <Cat ref={this.cat} />
}
} // 子组件
class Cat extends Component {
miao () {
console.log('miao, miao, miao~')
} render () {
return <View />
}
}

bug

https://github.com/NervJS/taro/issues/4832

https://github.com/NervJS/taro/issues/4851

https://github.com/NervJS/taro/issues/610



taro & querySelector & refs的更多相关文章

  1. Taro 3.x in Action

    Taro 3.x in Action React, 小程序 https://taro-docs.jd.com/taro/docs/README Taro Next 跨端, 跨框架 Taro 是一个开放 ...

  2. taro refs引用

    创建 Refs Taro 支持使用字符串和函数两种方式创建 Ref: 使用字符串创建 ref 通过函数创建 ref(推荐) 你也可以通过传递一个函数创建 ref, 在函数中被引用的组件会作为函数的第一 ...

  3. Taro Next H5 跨框架组件库实践

    作者:凹凸曼 - JJ Taro 是一款多端开发框架.开发者只需编写一份代码,即可生成各小程序端.H5 以及 React Native 的应用. Taro Next 近期已发布 beta 版本,全面完 ...

  4. $refs的用法及作用

    获取DOM元素,一般用document.querySelector获取这个dom节点,然后在获取input的值 但是用ref绑定之后,就不需要在获取dom节点了,直接在上面的input上绑定input ...

  5. Vue.js中ref ($refs)用法举例总结

    原文地址:http://www.cnblogs.com/xueweijie/p/6907676.html <div id="app"> <input type=& ...

  6. vue $refs的基本用法

    <div id="app"> <input type="text" ref="input1"/> <butto ...

  7. vue & button & refs & click & bug

    vue & button & refs & click & bug $refs.btn.click() ??? vue & refs $refs.btn.$em ...

  8. Taro自定义Modal对话框组件|taro仿微信、android弹窗

    基于Taro多端实践TaroPop:自定义模态框|dialog对话框|msg消息框|Toast提示 taro自定义弹出框支持编译到多端H5/小程序/ReactNative,还可以自定义弹窗类型/弹窗样 ...

  9. vue中$refs的用法及作用详解

    一般来讲,获取DOM元素,需要使用document.querySelector('#input1')方法去获取dom节点,然后再获取input1的值. 但是使用了ref绑定之后,我们就不需要再获取do ...

随机推荐

  1. windows命令行关闭IE代理

    打开:reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnab ...

  2. CSP2020-S游记

    写在前面 Q:按照惯例是不是要写一片游记啊? A:好像是吧.. Q:都爆零了还有脸写游记? A:再不写今年就没机会了啊 Q:-- 我不要脸 Day -?? 某二区学长毒奶:去年三棵树,今年六张图 Da ...

  3. 高性能缓存 Caffeine 原理及实战

    一.简介 Caffeine 是基于Java 8 开发的.提供了近乎最佳命中率的高性能本地缓存组件,Spring5 开始不再支持 Guava Cache,改为使用 Caffeine. 下面是 Caffe ...

  4. 将Oracle数据,以及表结构如何传输至MySQL

    最近研究数据库,将Oracle数据库中的表结构以及数据传输给MySQL数据库,自己通过学习采用两种方式,效率较高. 方式一:Navicat 自从下载了Navicat,真的发现这是一款操作数据库十分优秀 ...

  5. Go语言学习笔记(3)——面向对象编程

    把存货赶紧更新一波(捂脸) 1. 类型系统 类型系统,就是说一种编程语言怎么设计的它的类型的体系结构. 比如基础类型啊,复合类型啊,一些可以指向任意对象的类型啊,以及类型的语义,面向对象的特性,接口, ...

  6. hbase远程api调用, 远程连接开发,环境构建相关问题总结

    平时在开发的过程中,都是将hbase的环境装在虚拟机或者双系统上的,开发是直接在unix或者linux上进行的,这样对于使用上,有些繁琐. 下面我将介绍我在使用windows远程开发过程中的一些总结: ...

  7. markdown 编辑器使用教程---字体、颜色、表格换行、链接等

    资源池: 绿色版markdown编辑器:点击这里 提取码:ftf9 1.标题 #一级标题 ##二级标题 ###三级标题 ####四级标题 #####五级标题 ######六级标题 一级标题 二级标题 ...

  8. Jenkins(5)生成allure报告

    前言 jenkins集成了allure插件,安装插件后运行pytest+allure的脚本即可在jenkins上查看allure报告了. allure安装 在运行代码的服务器本机,我这里是用的dock ...

  9. 2019 Multi-University Training Contest 1 Path(最短路+最小割)

    题意:给你n个点 m条边 现在你能够堵住一些路 问怎样能让花费最少且让1~n走的路比最短路的长度要长 思路:先跑一边最短路 建一个最短路图 然后我们跑一边最大流求一下最小割即可 #include &l ...

  10. Codeforces Round #627 (Div. 3) B - Yet Another Palindrome Problem(逻辑)

    题意: 问一个数组中是否存在至少长为3的回文子数组(按下标排列,可不连续). 思路: 找三个相同数或两个不连续的相同数. #include <bits/stdc++.h> using na ...