添加属性';选定的';在ReactJs中选中复选框

添加属性';选定的';在ReactJs中选中复选框,reactjs,checkbox,Reactjs,Checkbox,我正在react项目中使用组件。代码是 App.jsx import React, { Component } from 'react' import { connect } from 'react-redux'; import Checkbox from '../../../components/Checkbox/Checkbox.jsx'; class App extends Component { render() { return ( <div class

我正在react项目中使用
组件。代码是

App.jsx

import React, { Component } from 'react'
import { connect } from 'react-redux';
import Checkbox from '../../../components/Checkbox/Checkbox.jsx';

class App extends Component {
  render() {
    return (
      <div className="App">
        <div style={{ 'float': 'left', 'background': 'white' }}><Checkbox
             input={{
             name: 'sampleName',
             onChange: (e) => this.onSelect(e.target.checked),
             value: allSelected
             }}
          /></div>
      </div>
    )
  }
}



export default connect(

)(App); 
import React,{Component}来自“React”
从'react redux'导入{connect};
从“../../../components/Checkbox/Checkbox.jsx”导入复选框;
类应用程序扩展组件{
render(){
返回(
此.onSelect(例如,target.checked),
值:allSelected
}}
/>
)
}
}
导出默认连接(
)(App);
Checkbox.jsx

import React from 'react';

import './Checkbox.scss';

class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled } = this.props;

        return (
            <div className="checkbox">
                <input disabled={disabled} id={name} type="checkbox" value={value} onChange={onChange} />
                <label htmlFor={name} className={size}/>
            </div>
        );
    }
}

export default Checkbox;
class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled, checked } = this.props;
    return (
        <div className="checkbox">
            <input disabled={disabled} checked={checked} id={name} type="checkbox" value={value} onChange={onChange} />
            <label htmlFor={name} className={size}/>
        </div>
    );
}
从“React”导入React;
导入“./Checkbox.scss”;
类复选框扩展了React.Component{
render(){
const{input:{name,size,value,onChange},disabled}=this.props;
返回(
);
}
}
导出默认复选框;

我想在
标记中再添加一个属性
选中:{Item.Selected}
,为此,我需要在Checkbox.jsx页面中进行更改,以获取属性
Selected

的值。您正在调用的属性称为prop in react。将道具传递给组件时,可以使用该组件中的
this.props
获取道具。因此,您的文件应如下所示:

App.jsx:

import React, { Component } from 'react'
import { connect } from 'react-redux';
import Checkbox from '../../../components/Checkbox/Checkbox.jsx';

class App extends Component {
  render() {
    return (
      <div className="App">
        <div style={{ 'float': 'left', 'background': 'white' }}><Checkbox
             checked={Item.Selected}
             input={{
             name: 'sampleName',
             onChange: (e) => this.onSelect(e.target.checked),
             value: allSelected
             }}
          /></div>
      </div>
    )
  }
}



export default connect(

)(App); 
import React,{Component}来自“React”
从'react redux'导入{connect};
从“../../../components/Checkbox/Checkbox.jsx”导入复选框;
类应用程序扩展组件{
render(){
返回(
此.onSelect(例如,target.checked),
值:allSelected
}}
/>
)
}
}
导出默认连接(
)(App);
Checkbox.jsx:

import React from 'react';

import './Checkbox.scss';

class Checkbox extends React.Component {
    render() {
        //the checked variable added below:
        const { input: {name, size, value, onChange}, disabled, checked } = this.props;

        return (
            <div className="checkbox">
                <input disabled={disabled} id={name} type="checkbox" value={value} onChange={onChange} />
                <label htmlFor={name} className={size}/>
            </div>
        );
    }
}

export default Checkbox;
从“React”导入React;
导入“./Checkbox.scss”;
类复选框扩展了React.Component{
render(){
//选中的变量添加到下面:
const{input:{name,size,value,onChange},disabled,checked}=this.props;
返回(
);
}
}
导出默认复选框;

您正在调用的属性在react中称为prop。将道具传递给组件时,可以使用该组件中的
this.props
获取道具。因此,您的文件应如下所示:

App.jsx:

import React, { Component } from 'react'
import { connect } from 'react-redux';
import Checkbox from '../../../components/Checkbox/Checkbox.jsx';

class App extends Component {
  render() {
    return (
      <div className="App">
        <div style={{ 'float': 'left', 'background': 'white' }}><Checkbox
             checked={Item.Selected}
             input={{
             name: 'sampleName',
             onChange: (e) => this.onSelect(e.target.checked),
             value: allSelected
             }}
          /></div>
      </div>
    )
  }
}



export default connect(

)(App); 
import React,{Component}来自“React”
从'react redux'导入{connect};
从“../../../components/Checkbox/Checkbox.jsx”导入复选框;
类应用程序扩展组件{
render(){
返回(
此.onSelect(例如,target.checked),
值:allSelected
}}
/>
)
}
}
导出默认连接(
)(App);
Checkbox.jsx:

import React from 'react';

import './Checkbox.scss';

class Checkbox extends React.Component {
    render() {
        //the checked variable added below:
        const { input: {name, size, value, onChange}, disabled, checked } = this.props;

        return (
            <div className="checkbox">
                <input disabled={disabled} id={name} type="checkbox" value={value} onChange={onChange} />
                <label htmlFor={name} className={size}/>
            </div>
        );
    }
}

export default Checkbox;
从“React”导入React;
导入“./Checkbox.scss”;
类复选框扩展了React.Component{
render(){
//选中的变量添加到下面:
const{input:{name,size,value,onChange},disabled,checked}=this.props;
返回(
);
}
}
导出默认复选框;

不确定是否正确理解了这一点,但我是否正确理解了。 App.jsx

类应用程序扩展组件{
render(){
返回(
此.onSelect(例如,target.checked),
值:allSelected
}}
选中={(您的条件,评估为真/假)}
disabled={whatever}
/>
)
}
}
然后 Checkbox.jsx

import React from 'react';

import './Checkbox.scss';

class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled } = this.props;

        return (
            <div className="checkbox">
                <input disabled={disabled} id={name} type="checkbox" value={value} onChange={onChange} />
                <label htmlFor={name} className={size}/>
            </div>
        );
    }
}

export default Checkbox;
class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled, checked } = this.props;
    return (
        <div className="checkbox">
            <input disabled={disabled} checked={checked} id={name} type="checkbox" value={value} onChange={onChange} />
            <label htmlFor={name} className={size}/>
        </div>
    );
}
class复选框扩展了React.Component{
render(){
const{input:{name,size,value,onChange},disabled,checked}=this.props;
返回(
);
}

希望这有帮助!

不确定是否正确理解了这一点,但我是否正确理解了。 App.jsx

类应用程序扩展组件{
render(){
返回(
此.onSelect(例如,target.checked),
值:allSelected
}}
选中={(您的条件,评估为真/假)}
disabled={whatever}
/>
)
}
}
然后 Checkbox.jsx

import React from 'react';

import './Checkbox.scss';

class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled } = this.props;

        return (
            <div className="checkbox">
                <input disabled={disabled} id={name} type="checkbox" value={value} onChange={onChange} />
                <label htmlFor={name} className={size}/>
            </div>
        );
    }
}

export default Checkbox;
class Checkbox extends React.Component {
    render() {
        const { input: {name, size, value, onChange}, disabled, checked } = this.props;
    return (
        <div className="checkbox">
            <input disabled={disabled} checked={checked} id={name} type="checkbox" value={value} onChange={onChange} />
            <label htmlFor={name} className={size}/>
        </div>
    );
}
class复选框扩展了React.Component{
render(){
const{input:{name,size,value,onChange},disabled,checked}=this.props;
返回(
);
}
希望这有帮助!