草庐IT

react-dom

全部标签

javascript - 单元测试 react Action - browserHistory 未定义

我为我的行为编写测试,使用{browserHistory}from'react-router';当我运行测试时,导入的browserHistory由于未知原因未定义。因此,测试会抛出一个错误——“无法读取未定义的‘push’属性”;我不知道,为什么browserHistory未定义,如果它在我的应用程序中有效。有人可以帮助我吗? 最佳答案 我猜你没有使用karma或任何浏览器来运行你的测试。如果没有浏览器,对象browserHistory将是未定义的。您可能需要使用sinonstub您的浏览器历史记录。类似以下内容可能有帮助:imp

javascript - 如何在 React JS onSubmit 函数调用中传递第二个参数

代码如下importReactfrom"react";varnewForm=React.createClass({handleSubmit:function(e,text){e.preventDefault();console.log(text);},render:function(){return();})};module.exports=newForm;我想要实现的是当我提交表单时,我想要字符串“react!!!”在控制台中打印出来并防止默认事件同时发生。显然,将参数传递给“handleSubmit”函数会破坏代码。是否可以将onSubmit事件的参数传递给附加到该事件的函数?

javascript - 在 React Native 中将 props 样式添加到现有组件样式

我定义了以下组件:importReact,{Component}from'react';import{StyleSheet,TouchableOpacity,View,Text}from'react-native';exportdefaultclassButtonextendsComponent{render(){return(this.props.onPress}>{this.props.title})}}conststyles=StyleSheet.create({container:{paddingTop:15,paddingBottom:15,paddingRight:20,p

javascript - 在 React Hooks 中使用具有 `Set` 状态的动态变量?

这是React组件中非常常见的模式:handleTextFieldChange(event){constname=event.currentTarget.name;this.setState({[name]:event.currentTarget.value})}什么Javascript语法可以用来对Reacthooks做同样的事情?即可能类似于以下内容:handleTextFieldChange(event){constname=event.currentTarget.name;this.set[name](event.currentTarget.value);}

javascript - jQuery 在特定元素之后获取 DOM 中的下一个匹配项

我不想承认这一点,但我一直在努力弄清楚如何做到这一点。例如假装你有以下结构:......我在与上面的突出显示“foo”节点相关的jQuery事件处理程序中。我想找到“下一个”img元素,它是一个“foo”。不过有两个问题。我只想选择DOM中比我所在的当前节点更远的“foo”元素(例如,不需要“前一个”foo和当前foo)虽然我已将嵌套显示为遵循精确的模式,但生成的代码是/可以嵌套在任何级别。..因此我不能只做.parent().parent().parent().siblings().find()...等。如果您可以想象,每次浏览器向DOM添加一个节点时,它都会递增一个计数器并为该节点

javascript - 服务器在静态网站上渲染 React js

我最近一直在探索React,我看到了如何设置诸如Node到服务器渲染代码之类的东西。出于速度原因,我真的对使用静态页面很感兴趣,但我不确定在使用静态html时是否可以渲染React组件。我可以使用类似nginx的东西来触发react渲染吗?或者我是否需要更多并且必须使用Node、rails或sinatra之类的东西?很抱歉,如果这是一个被误导的问题,我对服务器客户端交互没有很强的感觉。 最佳答案 我们导出一个允许您呈现为静态HTML的函数-ReactDOMServer.renderComponentToStaticMarkup(do

javascript - 我怎样才能 "upgrade"DOM 中的 jQuery 版本?

在与客户进行现场交流时,我提议升级客户正在使用的jQuery版本(即从jQuery1.5升级到1.11)。客户不太关心他们的TimeGlider版本将与较新的jQuery不兼容。我不熟悉TimeGlider,所以他们(使用Chrome)浏览到一个带有TimeGlider的页面向我演示。我想我会使用开发人员工具“升级”DOM的jQuery库,以立即解决问题。我知道onewaytoimportthejQuery1.11library,但这种技术需要一种简单的方法来首先删除旧的jQuery版本。也许有更好的方法。当然,在源代码中进行编辑很简单,但我真的很想通过开发人员工具在DOM中进行。如何

javascript - React 组件仅在第二个 onClick 事件上更改状态

我有这两个简化React组件,其中Times组件是Create组件的子组件(代码示例见下文).预期的行为是,最初未显示Times组件,但当用户使用onClick单击链接时,Times组件出现.这些组件大部分都按预期工作,但奇怪的是,在第一次单击onClick链接后​​,Times组件没有出现并且Create组件根本不会改变状态,如控制台中所示。但是,当第二次单击该链接时,Create组件会更改状态并重新呈现,并且可以看到Times组件。Create.jsximportReactfrom'react';importTimesfrom'./Times.jsx';exportdefaultR

javascript - 检测 DOM 元素顺序的变化

我有以下代码:RandomtextRandomtext并且,使用代码,我有50%的机会更改div中元素的顺序。$(document).ready(function(){varinitial=$("div");//Thismightnotbeokif(newDate()%2)//50%chancetorandomizeorderrandomizeOrder();varafter=$("div");//Alsothismightnotbeok//Detectiftheorderofspanschangedif(after!=initial)//Definitelywon'tworkcons

javascript - React.js 使用 map 遍历对象键和值

我有以下对象:varCustomers={name='John',last='Doe'}我已经导入到我的React组件中,我在遍历对象内容时遇到困难。这是我尝试过的importCustomersfrom'./customer';varcustomer=Customers.map(function(s){returns.name});出现以下错误UncaughtReferenceError:nameisnotdefined(…)(anonymous 最佳答案 此外,您不能对此类对象使用map。你应该写varcustomer=Objec