Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何在redux中多次调用订阅_Reactjs_Redux_React Redux - Fatal编程技术网

Reactjs 如何在redux中多次调用订阅

Reactjs 如何在redux中多次调用订阅,reactjs,redux,react-redux,Reactjs,Redux,React Redux,在这种情况下,unsubscribe函数只调用一次。但是控制台被打印的次数太多了。这是怎么发生的?如代码片段中所述 //请注意,subscribe()返回一个用于注销侦听器的函数 这意味着订阅存储只返回一个函数,但在订阅中,每次更新/更改存储时都会打印它,因此您会看到1中的7条控制台语句。在调用unsubscribe函数之前,先执行console.log和rest 6语句 根据您的问题,如何多次调用subscribe=> 这不是被呼叫的原因 const unsubscribe=store.sub


在这种情况下,
unsubscribe
函数只调用一次。但是控制台被打印的次数太多了。这是怎么发生的?

如代码片段中所述

//请注意,subscribe()返回一个用于注销侦听器的函数

这意味着订阅存储只返回一个函数,但在订阅中,每次更新/更改存储时都会打印它,因此您会看到1中的7条控制台语句。在调用unsubscribe函数之前,先执行console.log和rest 6语句

根据您的问题,如何多次调用subscribe=> 这不是被呼叫的原因

const unsubscribe=store.subscribe(()=>console.log(store.getState())


在这一行中,我们所做的是传递一个回调函数,它在每次存储发生更改时执行,从下面的行中,我们将从
dispatch
更新它,您可以从回调函数中看到console.logs。

那么我们可以在cosonle.log()行之前使用subscribe()吗?是的,您可以,创建店铺后随时订阅更新。