uni.createIntersectionObserver 在自定义组件中无法获取到对应的dom节点:
uni.createIntersectionObserver().relativeTo('.consult_title').observe('#consultNotice', (res) => {
//目前这种方式在开发者工具中会报 Node '.consult_title' is not found Node '#consultNotice' is not found
});
根据微信文档描述在自定义组件中必须用传递this;
uniapp的文档有说明如何传入this
然而在vue3中是摒弃了this,这就需要通过vue3新增的API获取我们所需要的this:
//getCurrentInstance
import {getCurrentInstance} from 'vue'
setup(){
const _this = getCurrentInstance(); // 通过getCurrentInstance得到我们想要的this,并把this传入createIntersectionObserver中
//_this.proxy
uni.createIntersectionObserver(_this.proxy).relativeTo('.consult_title').observe('#consultNotice', (res) => {});
}
如果此文对你有用请动动你的小手点个赞!谢谢!!!