草庐IT

react异步组件

全部标签

javascript - React 箭头函数组件 - setState 未定义

我正在尝试在箭头函数组件中设置状态,但出现错误“未定义设置状态”。我尝试使用setState({selectedSlot})和this.setState({selectedSlot})在handleChange中设置状态,但没有任何效果。constAddAssetActivity=props=>{let{variations,slots,priceStructure}=props;letstate={selectedSlot:{"0":"00","1":"11"},cal:1};lethandleChange=(event,value)=>{letselectedSlot=state.

javascript - 如何让 jQuery 将自定义参数传递给异步 AJAX 回调函数?

我的页面处理许多“商店”对象,每个对象都有一个名为“数据”的字段。但是,此数据是通过可能并行进行的AJAX请求获取的。functionStore(id){this.id=id;this.queryparam='blah';this.items=null;}Store.prototype.fetch=function(){$.get("/get_items",{q:this.quaryparam},function(data,status){//howtostorethereceiveddatainthisparticularstoreobject?Being//acallbackfun

javascript - JavaScript 中的组件间通信

我需要在Web应用程序中进行组件间通信,并且正在考虑实现此目的的不同方法。我有一些想法,但欢迎其他想法。首先,一个快速简单的例子。我在异步加载的页面上有两个独立的组件。我所说的组件是指具有与之关联的JavaScript对象的HTMLblock,该对象包括html中节点上的基于jQuery的行为。当用户与一个组件交互时,其他组件应该发生变化,反之亦然。这里要记住的关键是每个组件都应该是一个独立的单元。它可以在应用程序的不同部分甚至不同的应用程序中重复使用。所以它不知道页面上其他组件的存在。我目前对解决方案的想法包括让组件监听它们感兴趣的自定义事件,以及在发生操作时发送自定义事件。因此,每

javascript - jquery - 在异步数据获取后更新 jquery.sparkline

背景我正在使用jquery.sparkline生产PieCharts.饼图的数据包含在一个数组中。当页面首次加载时,调用网络服务(使用.ajax)来获取数据,那里指定的回调获取接收到的数据并更新与饼图关联的数组。当屏幕上的下拉菜单更改值时,将调用相同的更新过程。情况如果我将.ajax调用设置为asynch=false,一切正常。如果我将.ajax调用设置为asynch=true,则饼图中显示的结果总是“落后一次刷新”。我的意思是,最初没有饼图,然后当下拉菜单发生变化时,饼图呈现为最初应该呈现的样子。代码$.ajax({type:"GET",contentType:"applicatio

javascript - 使用 Javascript 捕获 react 时间,准确性问题

我正在构建一个点探测任务(人们必须在图像消失后对一个点做出快速react),我们需要测量react时间并显示预定义时间间隔内的刺激,以便在在线治疗研究中使用。我们已经决定使用Javascript,我们愿意对用户施加一些限制,即排除IE等。不过我们不能完全禁止Windows。我读了JohnResig'spost关于这个话题,根据这个,我们将不得不禁止Windows上的所有浏览器,除了Firefox和Chrome。另外thisanswer建议使用console.time();作为FF和Chrome的最佳实践。我有一些后续问题,考虑到Resig的帖子现在已有4年历史,并且上面的问题是关于测量

javascript - 异步循环中的 Node.js Api 调用

我在进行多次api调用并在正确位置获取返回结果时遇到困难。这就是我想要实现的目标:两个循环,嵌套。外部循环遍历一个复杂的json对象,并将一些对象的值放在数组调用框中。内部循环调用api并将返回的结果放在名为bag的数组中。所以我有装满数据的盒子和袋子。当循环和api调用都结束时,我想访问box和bag中的数据并对其进行处理。我只是不确定在同一执行点访问两个数组的最佳方法。这是我目前所拥有的,但当然bag和box是空的,因为它们在所有循环和api调用结束之前被调用。vardata={}//ajsonobjectwithdata;varbag=[];varbox=[];async.for

javascript - jsx --watch 将 jsx 语法转换为小写 "react"而不是大写 "React"

我在这里松散地关注facebooksReact教程,http://facebook.github.io/react/docs/getting-started.html,但我将其应用于不同的html文件。这是我的html文件,基于React入门工具包:HelloReact我安装了react-tools,现在当我运行“jsx--watchsrc/build/”它正在转换这个片段:varCommentBox=React.createClass({render:function(){return(Hello,world!IamaCommentBox.);}});React.renderComp

javascript - react .js : data not getting populated

我正在React.js网站上做教程。这是我的代码:HelloReact/***@jsxReact.DOM*///Theabovedeclarationmustremainintactatthetopofthescript.//YourcodeherevarcommentsData=[{author:"PeteHunt",text:"Thisisonecomment"},{author:"JordanWalke",text:"Thisis*another*comment"}];varCommmentBox=React.createClass({getInitialState:functi

javascript - 使用 React.JS 检索和缓存 SVG 节点边界框​​的最佳方法

我正在渲染带有标签的SVG组件。这些标签组件需要根据它们的文本内容(以及它们的大小)正确布局,以避免相互重叠。要获得每个标签的真实大小,似乎每次更新标签内容时都需要双重渲染。在标签组件级别,我需要第一次渲染检索真实SVGDOM节点的边界框出于性能原因缓存边界框重新渲染组件以根据其缓存的边界框调整标签位置然后,在每次重绘时:根据缓存的边界框渲染比较之前和更新的props之间的标签内容,如果有变化:更新并缓存标签边界框根据更新和缓存的边界框重新渲染到目前为止,这是我实现标签组件的方式:varLabel=React.createClass({updateBBox:function(){//T

javascript - React.addons.batchedUpdates API 的用途是什么?

Reactv0.12发布公告包括以下内容:NewFeatures:*React.addons.batchedUpdatesaddedtoAPIforhookingintoupdatecycle但是我找不到此API的任何文档。它的用途是什么?具体来说,它是否有可能与Ember.run()等效? 最佳答案 当响应onClick等综合事件时,组件状态更改是批处理的,因此对同一组件多次调用this.setState只会导致一次渲染。如果您正在更改状态以响应其他一些异步回调(例如AJAX或setTimeout),那么每次调用this.setS