草庐IT

react-promise

全部标签

javascript - 用 promises 实现的 debounce 函数

我正在尝试实现一个与javascript中的promise一起使用的去抖功能。这样,每个调用者都可以使用Promise使用“去抖动”函数的结果。这是迄今为止我能想到的最好的:functiondebounce(inner,ms=0){lettimer=null;letpromise=null;constevents=newEventEmitter();//doIreallyneedthis?returnfunction(...args){if(timer==null){promise=newPromise(resolve=>{events.once('done',resolve);});

javascript - 在 React 中迭代数据数组时呈现 JSX 元素的最有效方式

我有一个包含对象的数组。我正在创建此数组的映射以使用span组件呈现名称。letdata=[{"id":"01","name":"Hi"},{"id":"02","name":"Hello"}];我一直在使用以下两种不同的功能来迭代该对象数组,并使用map来呈现JSX元素。功能1:importReact,{Component}from'react';classAppextendsComponent{render(){letdata=[{"id":"01","name":"Hi"},{"id":"02","name":"Hello"}];constitems=data.map((key,

javascript - React Native 有全局作用域吗?如果不是,我该如何模仿呢?

这个问题在这里已经有了答案:HowtouseglobalvariablesinReactNative?(7个答案)关闭2年前。我没找到类似的东西$rootScope对于ReactNative,我想在不同的View之间共享几个变量。

javascript - 电子邮件验证(React Native)。将所有条目的结果返回为 'invalid'

我正在尝试通过根据表达式检查用户电子邮件来验证它。但是我得到的结果对所有条目都是无效的。更新代码classdummytestextendsComponent{constructor(props){super(props);this.state={email:'',validated:false,}};go=()=>{constreg=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;if(reg.test(this.state.email)===true){alert(valid);}else{alert();}}render(){retu

javascript - Promise.defer() 浏览器支持

我正在寻找一种方法来创建将在当前范围之外解析的延迟对象。我喜欢延迟对象,正如我在Chrome38中看到的Promise.defer()返回延迟对象。但在最新的Firefox34中Promise.defer在Safari8.0中也是未定义的。所以我现在不能到处使用Promise.defer。future状态如何?它会在其他浏览器中实现还是会因为弃用而被删除? 最佳答案 虽然我怀疑这是个好主意,但从技术上讲,您可以基于Promises实现自定义延迟对象。例如:functiondefer(){vardeferred={};varpromi

javascript - 每行显示 2 个项目[react native]

我正在学习ReactNative,在我看到的所有教程中,ListView每行仅使用1个项目。不过,我还没有使用过ListView。我只有6个项目必须显示为平面网格,每行2个项目并且应该响应。我知道这是一个基本问题,但我也从我这边尝试过,可以在图片中看到这是我的代码renderDeviceEventList(){return_.map(this.props.deviceEventOptions,deviceEventOption=>(this.props.selectDeviceEvent(deviceEventOption)}/>{deviceEventOption.icon_name

javascript - Vue单元测试报错: vuex requires a Promise polyfill in this browser

我使用vue-cli创建了一个项目,并在其中添加了vuex和vue-router。我正在尝试为其设置单元测试,但出现以下错误。没有Vuex,它曾经可以工作。PhantomJS2.1.1(MacOSX0.0.0)ERRORError:[vuex]vuexrequiresaPromisepolyfillinthisbrowser.atwebpack:///~/vuex/dist/vuex.js:145:0以下是相关的包版本:"babel-core":"^6.0.0","babel-eslint":"^7.0.0","babel-loader":"^6.0.0","vue":"^2.1.0"

javascript - React Native,更改 React Navigation 标题样式

我正在实现ReactNavigation在我的ReactNative应用程序中,我想更改标题的背景和前景色。我有以下内容:/***SampleReactNativeApp*https://github.com/facebook/react-native*@flow*/importReact,{Component}from'react';import{AppRegistry,StyleSheet,Text,View}from'react-native';import{StackNavigator}from'react-navigation';exportdefaultclassReact

javascript - react native : Using lodash debounce

我正在研究ReactNative和lodash的去抖动。使用下面的代码只会让它像延迟一样工作,而不是去抖动。{_.debounce(()=>console.log("debouncing"),2000)()}/>如果我输入“foo”这样的输入,我希望控制台只记录一次去抖动。现在它记录了3次“去抖动”。 最佳答案 Debounce函数应该在render方法之外的某个地方定义,因为每次调用它时它都必须引用该函数的同一个实例,而不是创建一个新实例,就像现在将它放在中时发生的那样onChangeText处理函数。定义去抖功能最常见的地方就是

javascript - 如何隐藏 React Native NavigationBar

我在Navigator下有NavigatorIOS,想隐藏Navigator的NavigationBar以使用NavigatorIOS的栏。有什么办法吗?这是screenshot我见过的。我需要NavigatorIOS的后端..我要构建的结构如下:├──NavigatorRoute1│  ├──NavigatorIOSRoute1│  ├──NavigatorIOSRoute2│  └──NavigatorIOSRoute3└──NavigatorRoute2我的代码如下。(基本从UIExplore实例中获取。导航器render:function(){return(}/>);}Navi