【发布时间】:2018-11-24 12:29:11
【问题描述】:
Apollo 的许多示例都涉及到类似
<Mutation
mutation={YOUR_MUTATION}
update={(cache, { data }) => {
// do stuff to update Apollo store
}}
>
{ mutate => ( <UI mutate={mutate} /> ) }
</Mutation>
这两个规则在 ESLint 规则和实践中都存在冲突。我们也知道 JSX props should not use .bind() - how to avoid using bind? JSX 道具在每次渲染时实例化新的箭头函数并不是好的做法。
- 您如何/在哪里编写您的
update处理程序? - 如果目标是制作尽可能多的“纯”函数,那么将处理程序附加到
update属性的正确方法是什么?
【问题讨论】:
-
您提到的答案已经提出了一个解决方案 - 使用类方法(例如,在构造函数中绑定或更好的箭头函数作为类属性)
标签: javascript reactjs apollo react-apollo