【javascript – 在React组件中的ES2015非变异数组交换(或流量动作)】教程文章相关的互联网学习教程文章

javascript – React组件从props初始化状态【代码】

在React中,这两个实现之间是否存在真正的差异?有些朋友告诉我,FirstComponent是模式,但我不明白为什么. SecondComponent似乎更简单,因为渲染只被调用一次. 第一:import React, { PropTypes } from 'react'class FirstComponent extends React.Component {state = {description: ''}componentDidMount() {const { description} = this.props;this.setState({ description });}render () {const {state: { description }} = this; ...

javascript – 将Flux存储中的Immutable.js映射与内部React组件状态合并【代码】

我一直在慢慢转换我的React Flux应用程序以使用Immutable.js数据结构.我使用Flux的原始的vanilla FB实现. 我遇到的一个问题是将组件状态与从Flux存储器接收的状态混合. 我将所有重要的业务逻辑状态保留在商店中.但我的规则是将UI相关状态保持在组件中.例如,如果打开一个下拉菜单,商店就不需要关心了,对吧? 当在组件中执行操作时,会出现问题,该组件会更改同一组件的存储中的状态.假设我们有一个打开下拉菜单的组件.从该下拉菜单中选...

javascript – 我的React组件如何理解’children’属性?【代码】

有一段时间,在撰写包装时,我正在使用:import React from "react";export default props => (<div style={{ fontWeight: "bold" }}>{props.children}</div> );但就在一秒钟之前,我遇到了这种很酷的技巧:import React from "react";export default props => <div style={{ fontWeight: "bold" }} {...props} />;它是如何工作的,我的意思是,div也是一个了解儿童属性的React组件? 此代码也有效:export default ({ children }) => (...

javascript – 如何测试React组件上定义为箭头函数(类属性)的组件方法?【代码】

我可以通过使用spies和Component.prototype来测试类方法.但是,我的许多类方法都是类属性,因为我需要使用它(对于this.setState等),并且因为构造函数中的绑定非常繁琐且看起来很丑,所以在我看来使用箭头函数要好得多.我使用类属性构建的组件在浏览器中工作,所以我知道我的babel配置是正确的.以下是我要测试的组件://Chat.jsimport React from 'react';import { connect } from 'react-redux';import { fetchThreadById, passMessage...

javascript – 将数组转换为由string分隔的React组件数组【代码】

如何转换下面显示的字符串数组var players = ['ronaldo','messi','naymar','suarez','ozil']进入jsx语句,如下所示<b>ronaldo</b> and <b>messi</b> and <b>naymar</b> and <b>suarez</b> and <b>ozil</b> and <b></b>我尝试使用.map和.join,如下所示players.map(player => <b>player</b>).join('and');但它呈现出来像这样[object Object] and [object Object] and [object Object] and [object Object]......我怎样才能做到这一点?...

javascript – React Native – 路由’…’的组件必须是React组件【代码】

您好我正在尝试使用标签栏的屏幕,但我无法继续,因为错误阻止了我.我知道我确实遵循了一些教程,但在我的情况下它没有用. 错误:Screen_Shot 目标UI:Tab Bar => Ordering (screen) => Category (screen)Settlement (screen)Pending (screen)码:import Login from './src/component/screens/Login'; import tables from './src/component/screens/tables'; import Category from './src/component/screens/Category'; import Dishes...

javascript – ReactJs组件如何从componentWillMount中检索var?【代码】

var React = require('react');var SomeComponent = React.createClass({ componentWillMount: function() {someVariable = "Variable";return someVariable },render: function() {return (<div>{someVariable}</div>);}});module.exports = SomeComponent;组件如何从componentWillMount中检索someVariable?解决方法:您的示例有效,因为您正在定义一个全局变量,然后render方法可以访问该变量.这通常很糟糕.我认为你真正想要的是在...

javascript – 在React组件中,foo(){}和bar =()=> {}之间的区别是什么?我何时应该使用哪个?【代码】

巴贝尔正在发挥其魔力,这使我对正在发生的事情感到非常困惑. 这个反应组件中foo和bar之间有什么区别?什么时候应该使用哪个?class MyComponent extends Component {foo() {//...}bar = () => {//... } }(我自己的猜测是foo在原型中,bar在构造函数中?反正我不知道我在说什么)解决方法:My own guess is foo is in the prototype, and bar is in the constructor? 这是完全正确的.foo() {}在此上下文中是方法声明,并将值分配给原型....

javascript – 如何防止在React组件中卸载?【代码】

我正在尝试在我的应用程序中实现一项功能,当用户试图离开未提交的表单时,他们会得到一个确认,询问他们是否确定要在保存更改之前离开. componentWillUnmount方法似乎是完美的候选方法,因为它会触发用户放弃表单的各种方式(更改导致它消失的父组件状态,导航到不同的路径等等).但是…当确认返回false时,我无法阻止卸载. 关于如何实施这个的任何建议?解决方法:这最好通过react-router:setRouteLeaveHook来处理.componentWillMount() ...

javascript – 如何将Redux的存储和操作连接到React的组件【代码】

我有一些ReactJS的经验,但现在我正在尝试使用Redux,我遇到了几个问题.我已经知道如何创建动作,consts,reducers,如何将它们连接到一个单独的商店,但我现在实际上并不知道如何将它与React一起使用.例如,我有一个表单来收集用户的数据,我希望它全部传递给Redux商店.所以我想主要的问题是如何在ReactJS中触发操作?解决方法:当使用react-redux时,你会得到一个名为connect的组件增强器.class Component extends React.Component {render...

javascript – 在redux中对许多小的可重用的reactjs组件使用connect()是个好主意【代码】

假设我有一个名为< LikePanel>的小型可重用组件.它将用于不同类型的父组件中的多个页面,例如< BlogEntry>或< ItemEntry>或< ReplyEntry>.import {connect} from 'react-redux' import {likeAction} from './LikeAction'class LikePanel extends React.Component{render() {return <ButtonGroup className={this.props.className}><Button onClick={()=>this.onClickLiking()}><Glyphicon glyph="thumbs-up"/>{this.props.like}</Bu...

javascript – React组件中预期的意外标记【代码】

我有一个看起来像这样的React组件'use strict';import 'babel-polyfill'; import React from 'react'; import TreeNode from './TreeView';export default React.createClass({mapFromApi : function(data) {const rec = (tree) => tree.reduce((x,y) => {const newObj = {"id" : y["@id"],"name" : y["rdfs:label"]};if (y.hasOwnProperty("options")) {newObj.children = rec(y.options, []);}if (y.hasOwnProperty("children")...

javascript – 使用Jest对ES7 React组件进行单元测试【代码】

你如何让Jest与ES7初始化器很好地配合?我在这里和其他来源搜索了很多,但没有找到任何结论. .babelrc.js{"env": {"development": {"presets": [["es2015", { "modules": false }], "react", "react-hmre"],"plugins": ["transform-class-properties","react-hot-loader/babel"]},"test": {"presets": ["env", "react"],"plugins": ["transform-class-properties"]},"production": {"presets": [["es2015", { "modules": false }], ...

javascript – 在react组件中写一个类之外的函数【代码】

我见过这样的代码function abc(){return 'abc' } class MyComponent extends React.Component {static abc = abc;render() { return <h1>{this.abc}</h1>; } }其中函数abc在react类之外定义.我不知道为什么作者这样做,为什么不能在课堂上这样做呢?解决方法:这些是ES6 static methods,并不是React独有的.它们是组件类的成员,而不是组件的实例.它们并没有在React中广泛使用,但它们可能很有用.它甚至在React docs中提到:Sometimes i...

javascript – 删除React组件中onClick事件的特定表行【代码】

在删除记录之后,我是React的新手并且在如何操纵DOM方面苦苦挣扎.我有一些反应组件,但我关注的是删除我设置的rails api中的记录.我在Ajax onclick调用上删除了ok的记录,但是不知道使用React删除特定行的最佳方法. 表充满了数据var ContactAll = React.createClass({getInitialState: function() {return {contacts: [] }},componentDidMount: function() {$.ajax({dataType: "json",url: '/all-contacts',type: "GET",context: this...