# useRef warning

> The final argument passed to useEffect changed size between renders. The order and size of this array must remain constant.

为什么设计上有这样的警告呢？其本质原因恐怕还需要探究一下。（大致猜得到，但恐怕准备的还要再查一下）

先谈谈解决方案：

如果我们需要依赖的对象是一个数字或字符串，那么最简单的方式 `Array.join()` 方法:

```
useEffect(() => {
  animate(pose);
}, [pose.join(",")]);
```

因此，有别于输入

```
["visible", "hidden"];
```

你现在的输入是

```
["visible,hidden"];
```

这样你就可以愉快的使用useEffect了


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mm.ricky.moe/framework/react/useref-warning.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
