草庐IT

react-promise

全部标签

javascript - Promise构造函数回调是异步执行的吗?

假设我有这段代码functiony(resolve,reject){console.log("Result");resolve();}varpromise=newPromise(y);我想知道函数y是否会被异步执行。 最佳答案 这取决于promise的执行情况。如果我们检查thespec.您可以找到最终规范here-因为这个答案是最初写的,所以已经定稿了。这里是相关的摘录(你可以找到原始出处here)让完成成为Call(executor,undefined,«resolvingFunctions.[[Resolve]],resolv

javascript - 如何防止 react 重新渲染整个组件?

我从here中改编了以下组件定义如下所示。但是,与示例不同的是,每次我在其上移动鼠标时,我的组件都会重新呈现。重新渲染非常明显:有人知道为什么会这样吗?importReact,{Component}from'react';import{PieChart,Pie,Sector}from'recharts';import{Segment,Header,Dimmer,Loader,Grid}from'semantic-ui-react';constrenderActiveShape=(props)=>{constRADIAN=Math.PI/180;const{cx,cy,midAngle,

javascript - 有什么方法可以使用 React-Intl 访问当前语言环境吗?

我想知道是否有任何方法可以使用React-Intl访问当前设置的语言环境?假设我创建了这个:render(){return();}在App中,我想做这样的事情,以访问我传递给IntlProvider的语言环境this.props.locale有什么办法可以做到这一点吗?谢谢。 最佳答案 新答案——使用钩子(Hook)(原文见下文)import{useIntl}from'react-intl';constMyComponent:FC=()=>{constintl=useIntl()return{`Currentlocale:${int

Chrome 中的 JavaScript Promise/Defer

我使用的是支持Promise规范的Q库。但是我也尝试使用不久前(实验性)在Chrome中实现的Promise类。Q中有一个defer函数,可用于创建一个未实现的promise,该promise可以在未来解决或拒绝。我使用Chrome中提供的nativePromise实现了相同的功能。这是一个例子:vardefer=function(){varresult={};result.promise=newPromise(function(resolve,reject){result.resolve=function(value){resolve(value);};result.reject=f

javascript - 在 promise 中使函数超时的最佳一般做法是什么

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestionpromise一个带有超时的函数调用我看到许多资源提供了使用Promise.race在给定时间段内使函数调用超时的类似示例。这是一个很好的例子,说明如何在实践中使用Promise.race。下面是一些示例代码:functiondoWithinInterval(func,timeout){varpromiseTimeout=newPromise(function(fulfill,reject

javascript - 混淆 error 和 reject in Promise

全部:我是JSPromise的新手,当涉及到Promise链时,有一个混淆,假设我有一个这样的promise链:varp=newPromise(function(res,rej){}).then(function(data){},function(err){}).then(function(data){},function(err){}).catch(function(err){})让我困惑的是:什么时候调用function(err)和什么时候调用catch?如何在then中解决和拒绝?谢谢 最佳答案 使用Promise的公式是:v

javascript - 如何使用 React 和 Redux 测试带有嵌套容器的组件?

由于我正在处理的应用程序的复杂性,我决定使用嵌套的redux容器,而不是将操作作为prop向下传递给子组件。然而,这已被证明在渲染OuterContainer时对单元测试有问题。与jsdom结合mocha,chai和sinon.这是View结构的人为示例:哪里OuterContainer&InnerContainer用连接包裹。例如:exportconnect()()运行测试时,我得到的错误是:InvariantViolation:Couldnotfind"store"ineitherthecontextorpropsof"Connect(Component)".Eitherwrapt

javascript - 如何使用 Jest 和 Enzyme for React-Native 在单元测试中模拟事件

我正在尝试找出如何在React-Native应用程序中使用Jest测试“onPress”事件,以便确保调用正确的函数。我浏览了文档和谷歌,但无法在React-Native中找到解决方案。这是我发现应该适用于带有enzyme的React-Native的东西:constmockFunc=jest.fn();constcomponent=mount();component.simulate('press');expect(mockFunc).toHaveBeenCalled();但这行不通。似乎mount不起作用,我得到了这个输出:ReferenceError:documentisnotde

javascript - React 正在渲染 [object object] 而不是 JSX

我试图用一个对象(不是数组)在我的网站上呈现日记条目,但我遇到了一个问题,这是我当前的代码populateJournal(){constj=Object.values(this.state.journal);varjournalEntries='';for(vari=0;i{j[i].title}-{j[i].date}{j[i].entry};}return({journalEntries});当我调用这个函数时,它呈现"[objectobject]"div之间的文本是纯文本。当我将循环更改为“journalEntries=”时,它会按预期呈现最后一个日记条目,但问题是它实际上并没有

javascript - `PropTypes.node` 和 `PropTypes.any` 在 react 中有什么区别?

//Anythingthatcanberendered:numbers,strings,elementsoranarray//(orfragment)containingthesetypes.optionalNode:PropTypes.node,//AvalueofanydatatyperequiredAny:PropTypes.any.isRequired,与PropTypes.node相比,PropTypes.any包含哪些类型? 最佳答案 PropTypes是一种验证通过我们的Prop传入的值的方法。节点我们可以使用Reac