草庐IT

react-promise

全部标签

javascript - 做多个 .fetch() promise

我想获取多个图像并将它们变成blob。我是promises的新手,我试过了,但我无法通过。下面是单个.fetch()promisefetch('http://cors.io/?u=http://alistapart.com/d/_made/d/ALA350_appcache_300_960_472_81.jpg').then(function(response){returnresponse.blob();}).then(function(myBlob){varobjectURL=URL.createObjectURL(myBlob);document.getElementById('

javascript - 为什么我们需要 JS 中的 Promise

我刚刚在MDN上阅读了Promise.我可以理解语法,但不确定我们为什么需要它。是否有特定情况只能使用Promise来完成?或者它只是一种编写更简洁代码的方法? 最佳答案 Promises使我们能够编写更简洁的代码,同时减少(或完全消除)回调hell。此外,回调是ES2017中一些新语法功能的支柱,例如asyncfunctions,它允许以更简洁的方式编写代码。当您第一次学习语法时,promises做的第三件事并不是立即显而易见的——自动错误处理。Promises允许错误沿着链传递并在一个公共(public)位置处理,而无需放置多层

javascript - 创建 React 组件的 2 种不同方式

我正在学习React教程,这是作者给出的用于创建基本React组件的示例代码:constReact=require('react')constReactDOM=require('react-dom')constApp=()=>{return(Hello)}ReactDOM.render(,document.getElementById('app'))他声称这是ES6。但后来我看到了另一种创建组件的方法。classAppextendsReact.Component{render(){returnHello;}}嗯,我现在很困惑。在React中有任何标准的做事方式吗?

javascript - Javascript promises 是否会阻塞堆栈

使用Javascriptpromises时,事件循环会被阻塞吗?我的理解是,使用await和async会使堆栈停止,直到操作完成。它是通过阻塞堆栈来实现这一点,还是类似于回调并将流程传递给各种API? 最佳答案 WhenusingJavascriptpromises,doestheeventloopgetblocked?没有。Promises只是一个事件通知系统。它们本身不是操作。他们只是通过调用适当的.then()或.catch()处理程序来响应被解决或拒绝,如果链接到其他promise,他们可以延迟调用这些处理程序直到他们所链接

javascript - 如何使 Prop 不可变以防止在 React 中重新渲染?

我一直在使用react.js创建一个小应用程序。我过多地考虑了“性能”。所以我有一个名为“Spinner”的简单子(monad)组件。我的目标是确保此组件永远不会重新呈现。这是我的组件:importReact,{PureComponent}from'react';exportdefaultclassSpinnerextendsPureComponent{render(){return()}}在使用“react-addons-perf”重新渲染时,组件始终在渲染,我正在使用PureComponent因为我希望该组件只渲染一次,我读到我可以使用不可变Prop但是我不知道如何使这成为可能。如

javascript - 从执行函数返回 promise ?

尝试与JSAPI交互,但在由Grunt任务运行时失败;我觉得我的逻辑很困惑。我的步骤:从文件中获取token,检查它们(check_tokens)如果它们是旧的-刷新它们(refresh_tokens)调用API刷新,如果失败-获取新的(authorize_with_api)来自authorize_with_api错误拒绝或使用token解决目前Grunt任务报告一个UnhandledPromiseRejectionWarning并且永远不会完成。如果我注释掉对authorize_with_api的调用,它会正确退出并出现错误,并且我会打印最上面的caughterror!消息。为什么我

javascript - 如何观察 react-native node_modules 的变化

当我运行react-nativestart或npmstart时,打包程序启动并提示LookingforJSfilesin/Users/map/repos/myrepo/我启用了热重载。当我更改位于/Users/map/repos/myrepo/node_modules/react-native/中的文件时,似乎检测到更改,但是如果我在第三方存储库中编辑文件,如/Users/map/repos/myrepo/node_modules/react-native-menu/看起来watchman没有检测到变化。我刚刚将项目中的ReactNative升级到0.39,我认为这不是以前的默认行为。

javascript - 一旦所有嵌套的 promise 都解决了,就触发 Promise.all()

我正在尝试使用他们的FirebaseAPI递归地获取HackerNews故事的所有评论。一个故事有一个kids属性,它是一个表示评论的ID数组。每个评论都可以有自己的kids属性,指向它的子评论,等等。我想创建一个包含整个评论树的数组,如下所示:[{'title':'comment1','replies':[{'title':'comment1.1'},{'title':'comment1.2''replies':[{'title':'comment1.2.1'}]}]}]我想我可以使用以下函数来做到这一点:functiongetItem(id){returnapi.child(`it

javascript - Nodemon 没有在 React-Express-Node App 中刷新浏览器

我已经在我的工作区本地安装了nodemon,但是即使它在进行更改后在终端中重新启动,它也不会刷新浏览器页面。我每次都必须手动刷新它。我在环境中运行了Express、Node、React和Webpack。这是我的设置的样子-我的package.json启动server.js-"scripts":{"test":"echo\"Error:notestspecified\"&&exit1","start":"nodemonserver.js"},和server.js是-varexpress=require('express');varapp=express();app.use(express

javascript - 应用多个过滤器 react

我有2个按钮,单击它们时应按novelty或offer进行过滤,我能够做到这一点,以便在单击novelty时将按此进行过滤,但我我无法做到,如果两者都被点击,它将同时按novelty和offer进行过滤我怎样才能让它在点击novelty和offer时都按这两者进行过滤?https://www.webpackbin.com/bins/-KpVGNEN7ZuKAFODxuERimportReactfrom'react'exportdefaultclassextendsReact.Component{constructor(){super()this.state={products:[{id