Reactjs 如何访问表单中的道具 从“React”导入React 类EditProduct扩展了React.Component{ 建造师(道具){ 超级(道具) } render(){ 返回( ) } } 常量mapStateToProps=(状态)=>{ 返回{ 产品:state.ProductReducer.products[0] } } 导出默认连接(MapStateTrops)(EditProduct) 功能产品形式(道具){ log(“编辑的道具”,道具);//这里我可以得到道具 返回( Sku

Reactjs 如何访问表单中的道具 从“React”导入React 类EditProduct扩展了React.Component{ 建造师(道具){ 超级(道具) } render(){ 返回( ) } } 常量mapStateToProps=(状态)=>{ 返回{ 产品:state.ProductReducer.products[0] } } 导出默认连接(MapStateTrops)(EditProduct) 功能产品形式(道具){ log(“编辑的道具”,道具);//这里我可以得到道具 返回( Sku,reactjs,Reactjs,控制台输出: delProd:id=>{…}editProd:id=>{…}历史:{length:25,操作: “推”,位置:{…},createHref:ƒ,推:ƒ,…} 位置:{pathname:/”,搜索:,哈希:,状态:未定义,键:“hwy1de”} 匹配:{path:://',url://',isExact:true,参数:{…} 产品:阵列(一) 0:{sku:“SD”,产品名称:“prd”,描述:“des”,持续时间:“231”,id:“nUkHoRev”} 长度:1 我试图在表单

控制台输出:

delProd:id=>{…}editProd:id=>{…}历史:{length:25,操作: “推”,位置:{…},createHref:ƒ,推:ƒ,…} 位置:{pathname:/”,搜索:,哈希:,状态:未定义,键:“hwy1de”} 匹配:{path:://',url://',isExact:true,参数:{…} 产品:阵列(一) 0:{sku:“SD”,产品名称:“prd”,描述:“des”,持续时间:“231”,id:“nUkHoRev”} 长度:1

我试图在表单中列出值,但它不显示,但我在道具中获得值


如果我尝试在内部添加props.products[0].sku,它会说它没有定义。很明显,在产品内部有任何内容之前,它是没有定义的。我如何使用相同的表单编辑和添加产品。请提前向我们表示感谢。

这里您传递了
产品

import React from 'react'
class EditProduct extends React.Component {

    constructor(props) {
        super(props)
    }


    render() {

        return (
            <div>

                <ProductForm 
                  handleChange={this.handleChange}
                  clickHandle={this.clickHandle}
                  product={this.props.product}
                />
            </div>
        )
    }
}

const mapStateToProps = (state) => {    
    return {
        product: state.ProductReducer.products[0]
    }
}

export default connect(mapStateToProps)(EditProduct)

function ProductForm(props) {
 console.log("props from edit", props); // Here i can gets props
    return(
        <form>
            <div className="form-group">
                <label htmlFor="productid">Sku</label>
                <input type="email" 
                    className="form-control" 
                    id="sku" 
                    name="sku"
                    aria-describedby="skuHelp" 
                    onChange={props.handleChange}
                    value={props.sku}
                    placeholder="Enter SKU"/>
           </div>
你能试试这个吗

console.log("props from edit", props);

Sku

希望这将解决

delProd:id=>{…}editProd:id=>{…}历史:{length:25,操作:“推送”,位置:{…},createHref:ƒ,推送:ƒ,…}位置:{pathname:/”,搜索:,哈希:,状态:未定义,键:“hwy1de”}匹配:{path:/“,url:/”,isExact:true,参数:{…}产品:数组(1)0:{sku:“SD”,productName:“prd”,description:“des”,duration:“231”,id:“nUkHoRev”}长度:1这是我在安慰propsvalue={props.sku}时得到的结果,它不起作用,不应该是props.product?。
console.log("props from edit", props);
  <form>
        <div className="form-group">
            <label htmlFor="productid">Sku</label>
            <input type="email" 
                className="form-control" 
                id="sku" 
                name="sku"
                aria-describedby="skuHelp" 
                onChange={props.handleChange}
                defaultValue={props.products && props.products.sku}
                placeholder="Enter SKU"/>
       </div>