-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add new hook useMutationObserver #1751
Conversation
|
我没啥问题了,等 crazylxr 再看下哈 |
OK,辛苦 |
test 的问题可以先放一放 ~ 后面我看看怎么改 |
[中文版模板 / Chinese template]
🤔 This is a ...
🔗 Related issue link
💡 Background and solution
close #1542
close #1567
📝 Changelog
新增 hook: useMutationObserver
一个监听指定的 DOM 发生变化的 hook
代码演示
一、基础用法
二、可传入 DOM 元素
三、可监听子节点变化
API
Params
Element
|() => Element
|MutableRefObject<Element>
(mutations: MutationRecord[], observer: MutationObserver) => void
MutationObserverInit
options
string[]
true
将记录任何有改动的属性的上一个值boolean
true
以观察受监视元素的属性值变更boolean
false
true
以监视指定目标节点或子节点树中节点所包含的字符数据的变化boolean
true
以在文本在受监视节点上发生更改时记录节点文本的先前值boolean
true
以监视目标节点添加或删除新的子节点(如果 subtree 为 true,则也包含子孙节点)boolean
false
true
以将监视范围扩展至目标节点整个节点树中的所有节点boolean
false
notice
注意,以下任一情况都会抛出异常:
在
options
配置项对象中,必须至少将attributes
、characterData
或childList
中的一个属性设置为true
,否则会报错attributes
选项为false
(表示不监视属性更改),但是attributeOldValue
选项为true
并且/或者attributeFilter
配置存在characterDataOldValue
选项为true
,但是characterData
选项为false
(表示不跟踪字符更改)☑️ Self Check before Merge