草庐IT

react-promise

全部标签

javascript - 在ajax调用后 react 组件状态变化但不重新渲染组件

在这一部分,用户可以对帖子发表评论。在服务器端检查并收到数据后,我尝试更改this.state.comments值。这样就完成了。但问题是,它并没有改变组件的评论部分。我已经阅读了之前关于重新渲染的问题,所以请不要标记为重复。下面是代码:$.post("requests.php",{requestKey:'newComment',commenterUser:commenterUser,commenterEmail:commenterEmail,theComment:theComment,pnum:pnum},function(data,status,xhr){if(status=='s

javascript - React/Redux 中的通用 reducer / Action

我正在尝试确定如何提取多条数据以在同一组件中使用。我看到的每个React/Redux示例都请求非常具体的数据,并且有reducer和操作来处理该确切类型的数据。但是,我无法找到有关处理更多通用数据的信息。例如,我的网站上有几个不同的组件(或类别)。其中一个组件是Cards。因此,如果用户单击/cards/hockey的链接,它应该从API请求曲棍球数据(如果它不在商店中),并将其显示在Cards页面中。如果用户单击/cards/football的链接,它应该遵循相同的过程,检查它是否有存储的数据,如果没有从API中提取它,并显​​示卡片包含该数据的页面。另一种组件类型可能是stats,

javascript - 与 React 的默认导入混淆

要导入React,我们编写importReactfrom'react'。但这是默认导出权吗?因此,如果我将其名称更改为React以外的名称,它也应该可以工作。但它不起作用。谁能解释一下为什么? 最佳答案 本质上,JSX编译器(如Babel/TypeScript)将JSX代码转换为纯JavaScript。例如,下面的JSX代码:constElement=()=>(Heythere);编译成:constElement=()=>(React.createElement("div",null,"Heythere"));现在是可以被浏览器解析

javascript - 为什么我不能在 Node v0.11.11 中使用 Promise?

我只是在摆弄Node的v0.11分支,我想知道为什么我不能使用原生ES6Promise对象,即使打开--harmony。我常用的chrome浏览器:GoogleChrome32.0.1700.77(OfficialBuild244503)JavaScriptV83.22.24.10支持它们,node.jsv0.11.11告诉我:>process.versions.v8'3.22.24.19'那么是什么给了? 最佳答案 NativePromises已加入,您现在可以使用它们。它们仍然比像Bluebird这样的库更慢且更难调试,但它们就

javascript - 使用 React 一次突出显示一个对象

我对React和Javascript都很陌生,我已经通过构建一个简单的可折叠菜单开始学习它。它按预期工作,除了我不知道如何一次只突出显示一个项目。我怀疑onClick方法和状态必须由比sectionItem更高级别的类拥有,但我真的很困惑如何使它起作用。我的第一直觉是每次单击某项时都遍历菜单中的所有项目,并确保所有其他项目都切换为active=false。这是正确的思考方式吗?有人可以解释在这种情况下状态在React中是如何工作的,以及我应该如何在这里实现它?完整代码可在此处获得:Menuoncodepen.io这是我想要突出显示的项目的代码。我还不能实现一次只突出显示一个项目。var

javascript - 'catch' 在原生 Promise 链中是如何工作的?

在Chrome或Firefox的控制台选项卡上尝试这段代码varp=newPromise(function(resolve,reject){setTimeout(function(){reject(10);},1000)})p.then(function(res){console.log(1,'succ',res)}).catch(function(res){console.log(1,'err',res)}).then(function(res){console.log(2,'succ',res)}).catch(function(res){console.log(2,'err',r

javascript - react : How to access refs in this. props.children

我想调用一个子组件的函数。是否有可能在React中从this.props.children获取引用。varComponentSection=React.createClass({componentDidMount:function(){//Howtoaccessrefsinthis.props.children?this.refs.inner.refs.specificPanel.resize();},render:function(){return({this.props.children});}});varPanel=React.createClass({resize:functi

javascript - ES7 异步函数和 promise 之间的技术区别?

我试图更好地理解JavaScript中的asyncfunction在技术上是什么,即使我基本上知道如何使用它们也是如此。许多对async/await的介绍让人相信async函数基本上只是一个promise,但显然不是这样(至少在Babel6-transpiledcode中不是):asyncfunctionasyncFunc(){//nop}varfooPromise=newPromise(r=>setTimeout(r,1));console.clear();console.log("typeofasyncFuncis",typeofasyncFunc);//functionconso

javascript - 从异步函数返回的 promise 中获取值(value)

我已经习惯了建议的async/await语法,并且有一些不直观的行为。在“async”函数中,我可以console.log正确的字符串。但是,当我尝试返回该字符串时,它返回了一个promise。检查此条目:async/awaitimplicitlyreturnspromise?,很明显任何“异步函数()”都会返回一个promise,而不是一个值。没关系。但是你如何获得值(value)呢?如果唯一的答案是“回调”,那很好-但我希望可能有更优雅的东西。//src//==========================================require("babel-polyfi

javascript - 使用 react-hot-loader 获取 "Aborted because 0 is not accepted"和整页重新加载

我正在尝试使用react-hot-loader设置webpack热重载。它大部分似乎都在工作。我在现有的Rails应用程序中使用webpack。但这不是热重载。每次更改我的react代码时,它都会触发重新加载。我收到的错误消息是:[HMR]Cannotapplyupdate.Needtodoafullreload!-dev-server.js:18[HMR]Error:Abortedbecause0isnotaccepted-dev-server.js:19athotApply(http://localhost:8080/assets/webpack/bundle.js?body=1: