草庐IT

react-promise

全部标签

javascript - 使用 Mocha 和 Chai-as-Promised 测试被拒绝 promise 的特定属性

我正在尝试使用Chai-as-Promised测试被拒绝的Promise的细节,Mocha,和“应该”方言。promise由bluebird实现.这很好用:it('itshouldberejectedwhengivenbadcredentials',function(){varpromiseOfUsers=db.auth("bad","credentials").getUsers();returnpromiseOfUsers.should.eventually.be.rejectedWith(Error)});该错误有一个“状态”属性。我想断言状态是401这不起作用:it('itsho

javascript - React.js - componentWillReceiveProps 被击中两次

我有一个像这样呈现的React.js组件:;页面上有一些事件会更新this.state.email,结果会通过render,发送一个新的emailprop到Social组件。在这个Social组件中,我正在监听这样的更新:componentWillReceiveProps:function(nextProps){console.log('receivedpropsupdate',nextProps.email);this.doSomeWork();}该控制台行被渲染两次,这使得用户界面随着对社交网络的调用而闪烁两次。我总是可以做这样的事情:if(nextProps.email!=thi

javascript - 动态 HTML 字符串来 react 组件

我将从我的模板渲染中获取动态html内容,该内容由其他React组件渲染。我如何将此html字符串转换为React组件,以便我可以在渲染函数中使用该组件。请注意,我想保留用于比较的React特定属性。React.createClass({varself=this;componentWillMountDown:function(){//htmlStringisessentiallyhugedynamiconeinmyactualcasevarhtmlString="";self.setState({responseString:htmlString});self.forceUpdate(

javascript - 为什么要在构造函数之外设置 React 组件的状态?

所以我刚刚从React框架下载了源代码,但在终端中出现了这个错误:ERRORin./src/components/TextEditor.jsModulebuildfailed:SyntaxError:Unexpectedtoken(24:8)22|23|//Settheinitialstatewhentheappisfirstconstructed.>24|state={|^25|state:initialState26|}27|我的问题是,为什么人们要这样设置React组件的状态?如果它对某些人来说是错误的,那有什么好处呢?另外,是否有Babel预设或插件可以防止此错误?这是我通常设

javascript - 等待相当于 'Promise.resolve().then()' ?

我熟悉Promises,但继承了一些相当不寻常的代码,而不是制作newPromise(),而是使用以下代码:Promise.resolve().then(function(){//Dousefulthings})根据我的研究,这是一个weirdversionofsetImmediate-即,在下一次滴答时运行以下函数。await版本是什么? 最佳答案 Promise.resolve()可能有两个不同的原因。你触及了其中之一:延迟到JS事件循环的当前运行结束这里显而易见的答案是awaitPromise.resolve();。await

javascript - React - 动态导入组件

我有一个页面,它根据用户输入呈现不同的组件。目前,我已经对每个组件的导入进行了硬编码,如下所示:importReact,{Component}from'react'importComponent1from'./Component1'importComponent2from'./Component2'importComponent3from'./Component3'classMainextendsComponent{render(){varcomponents={'Component1':Component1,'Component2':Component2,'Component3':C

javascript - 动态嵌套 react 形式 : ExpressionChangedAfterItHasBeenCheckedError

我的react形式是三个组件级别深。父组件创建一个没有任何字段的新表单并将其传递给子组件。首先,外部形式是有效的。稍后,子组件会添加带有验证器(失败)的新表单元素,从而使外部表单无效。我在控制台中收到一个ExpressionChangedAfterItHasBeenCheckedError错误。我想修复该错误。不知何故,这只会在我添加第三层嵌套时发生。同样的方法似乎适用于两层嵌套。笨蛋:https://plnkr.co/edit/GymI5CqSACFEvhhz55l1?p=preview父组件@Component({selector:'app-root',template:`myFo

javascript - 事件循环和Promise有什么关系

这个问题在这里已经有了答案:PromisevssetTimeout(6个答案)关闭5年前。很好奇EventLoop和Promise的关系该演示暴露了这个问题。我希望p1fulfilled出现在中间,因为它们将任务排队到同一个任务队列并一个接一个地执行。varp1=newPromise(function(resolve,reject){resolve(1)})setTimeout(function(){console.log("willbeexecutedatthetopofthenextEventLoop")},0)p1.then(function(value){console.log

javascript - Uncaught Invariant Violation : Too many re-renders. React 限制渲染次数以防止无限循环

我正在尝试添加一个snackBar,以便在用户登录或未登录时显示一条消息。SnackBar.jsx:importReactfrom"react";importPropTypesfrom"prop-types";importclassNamesfrom"classnames";importCheckCircleIconfrom"@material-ui/icons/CheckCircle";importErrorIconfrom"@material-ui/icons/Error";importCloseIconfrom"@material-ui/icons/Close";importgr

javascript - 定义 ES6 React 组件的两种方式

我在看thisfiddle对于MobX,我也在E​​S6的其他地方看到了这两种定义React组件的方法,比如DanAbramov的eggheadredux视频系列。@observerclassTodoListViewextendsComponent{render(){return{this.props.todoList.todos.map(todo=>)}Tasksleft:{this.props.todoList.unfinishedTodoCount}}}constTodoView=observer(({todo})=>todo.finished=!todo.finished}/>