草庐IT

react-native-web

全部标签

javascript - 如何使用 React hooks 处理/链接依赖于另一个的同步副作用

我正在尝试将我的应用程序从redux重写为新的上下文+Hook,但不幸​​的是,我很难找到一种好方法来处理一系列依赖于前一个响应的同步副作用。在我当前的redux应用程序中,我大量使用同步/链接操作和API请求,我通常通过redux-saga或thunk处理这些请求。因此,当返回第一个API请求的响应时,该数据将用于下一个API请求等。我做了一个自定义钩子(Hook)“useFetch”(在这个例子中它没有做太多,因为它是一个简化的版本,我还必须做一个小的调整才能在codesandbox上工作-请参见下面的代码)。问题在于,由于“钩子(Hook)规则”,我不能在useEffect钩子(

javascript - 在 setTimeout 中调用的函数不使用当前的 React 状态

快速总结我正在尝试创建一个按钮,它既有常规点击功能,又有用户点击并按住它时发生的单独操作,类似于Chrome中的后退按钮。我这样做的方式涉及一个setTimeout()和一个检查状态的回调。出于某种原因,回调正在使用调用setTimeout()时的状态,而不是调用回调时的状态(1秒后)。您可以在codesandbox上查看我是如何努力实现这一目标的为了获得此功能,我在MouseDown上调用setTimeOut()。我还将处于状态的isHolding设置为true。onMouseUp我将isHolding设置为false并且还运行clickHandler(),这是一个Prop,如果ho

javascript - React Hooks useEffect,添加依赖触发死循环

在我的useEffect中,我有一个Prop依赖项(setIsValid)。当我将此依赖项添加到useEffect时,它会陷入无限循环。调用子组件时为父级:constsetIsValid=(bool)=>{consttmpStateCopy=Object.assign({},state);tmpStateCopy.isValid=bool;setState(tmpStateCopy);};return在子组件中:const{setIsValid}=props;const[state,setState]=useState({transformations:[],duplicateInde

javascript - 如何在 React Native 和 Node 中计算校验和?

我正在将图像文件从ReactNative上传到AWSLambda(Node10.x),并想验证我发送的文件的哈希值是否与收到的文件匹配。为此,我在ReactNative中使用哈希,并在Lambda中再次使用,但哈希从不匹配。以下是我尝试过的相关代码。nativereactimportRNFSfrom"react-native-fs";constcontentChecksum=awaitRNFS.hash(post.contentUrl,"md5");Lambda(Node)importAWSfrom"aws-sdk";constcrypto=require("crypto");cons

javascript - react Hook : accessing up-to-date state from within a callback

编辑(2020年6月22日):由于这个问题引起了一些新的兴趣,我意识到可能存在一些困惑。所以我想强调:问题中的例子只是一个玩具例子。它不能反射(reflect)问题。引发这个问题的问题是使用第三方库(对其控制有限),该库将回调作为函数的参数。为该回调提供最新状态的正确方法是什么。在React类中,这将通过使用this来完成。在Reacthooks中,由于状态被封装在React.useState()函数中的方式,如果回调获取状态通过React.useState(),它将是陈旧的(设置回调时的值)。但如果它设置状态,它将可以通过传递的参数访问最新状态。这意味着我们可以通过将状态设置为与原来

javascript - 新 web 项目上 javascript 配置的最佳实践

我想问一个关于一个新的大型网络项目的javascript要求的问题。我们将在我们的项目中使用大量的javascript、ajax请求、jquery、json对象和jquery插件。我们计划将全局变量和大量默认值存储在服务器端的带有php类和ini文件的全局站点配置文件中。但我们需要在客户端使用javascript-jquery读取、使用并有时重写一些变量和配置值。此基于javascript的配置文件必须具有以下属性;不会拥有所有服务器端配置值。只有我们需要。必须是将在htmlhead部分调用的单个文件。必须定义一个全局变量或json或javasctipt对象或数组(我不知道哪个最好)此

javascript - 与具有持久 URL 的应用程序相比,构建大量使用 AJAX 的 Web 应用程序的优缺点是什么?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭11年前。原始问题:制作一个全JavaScript网站是个坏主意吗?*更改了问题,因为这最终更像是一个讨论,但它可能对其他人有帮助。*在这种情况下,我正在考虑制作一个最初使用常规HTML提供其整体布局的网站(如普通的基本网页),但后来我计划动态填充HTML内容区域的内容,完全使用AJAX请求。网站的用户永远不会刷新页面或转到新页面,所有其他需要生成的div和元素都将使用AJAX创建(利用网站上的大量Jav

javascript - 将 Javascript 对象传递给 Web Worker

我有一个这样的对象:functionA(id){this.id=id;}A.prototype.getId=function(){returnthis.id;}它作为文件(“objects.js”)包含在html页面中,也包含在带有importScript(“objects.js”)的网络worker中。现在,我使用“vara=newA()”在html页面中创建一个A实例,并使用“postMessage()”将其发布到WebWorker。有趣的是,在worker中它仍然具有属性“id”及其值,但原型(prototype)函数丢失了。我猜原因可能是原型(prototype)函数“绑定(b

javascript - Web Audio API,从声卡获取输出

可以吗?如果是这样,非常感谢有关该主题的任何信息。(如果不使用WebAudioAPI,是否有其他一些API可以让我实现此目的?) 最佳答案 德里克是对的。如果你有一个realtek卡(我不知道其他制造商的支持)你将它设置为立体声混音,并将立体声混音设置为默认麦克风。然后,您可以使用navigator.getUserMedia创建一个与您的麦克风链接的源节点。谷歌搜索,您会找到它。我刚刚为你做了一个fiddle:Audiofromsoundcard编辑:链接现在转到正确版本的jsfiddle(另一个有错误的条)。

javascript - react 代码抛出 “TypeError: this.props.data.map is not a function”

我刚开始用React编码,我习惯用CoffeeScript编码。我试着沿着tutorialpresentedintheReactdocs编码并为状态更新做了类似的事情。但是,我收到TypeError:this.props.data.mapisnotafunction。我有点迷茫,想知道我哪里错了。有人可以指导我并告诉我哪里出错了吗?这是我的代码:(function(){varStatus,StatusBox,StatusForm,StatusList,button,div,h4,textarea,_ref;_ref=React.DOM,div=_ref.div,textarea=_re