[小程序]点击组件之外关闭组件
[思路] 收集组件内所有元素的uid数组,判断点击事件的id是否在该uid数组内
直接上代码 (这是一个工具Hooks)
import {
useEffect, useState } from 'react';
const useOnClickOutside = (
containerId: string, // 组件所在整个页面的 id
ref: any, // 要控制组件的ref
handler: (e?: Event) => void, 点击元素之外的事件
) => {
const [domIds, setDomIds] = useState<string[]>([])