gpt4 book ai didi

javascript - react 引用值为空

转载 作者:行者123 更新时间:2023-12-03 00:41:49 24 4
gpt4 key购买 nike

我有一个带有不受控制的输入元素的 react 组件,如下所示:

class TestComponent {

onAddTypeClicked = el => {
console.log(el);
console.log(el.value);
};


render() {
return (
<div>
<input
name="asset_types"
ref={el => this.assetTypesAdd = el}
/>
<button
type="button"
onClick={e => this.onAddTypeClicked(this.assetTypesAdd)}
/>
</div>
);
}

现在,当我在输入字段中输入一些值并单击按钮时,输入会正确打印,但其值为空。如果我使用 document.getElementById 方法,效果很好。如果我做错了什么,有人可以指出吗?

最佳答案

我相信您的代码工作正常,并且 this.assetTypesAdd.value 中的可访问值与其打印值相同。我不确定您在哪里获得输入的空值。

// Example class component
class MyComponent extends React.Component {

onAddTypeClicked = el => {
console.log(el.value);
this.forceUpdate();
};

render() {
return (
<div>
<input
name="asset_types"
ref={el => this.assetTypesAdd = el}
/>
<button
type="button"
onClick={e => this.onAddTypeClicked(this.assetTypesAdd)}
>
Click me
</button>
{this.assetTypesAdd &&
<div>Value of input: {this.assetTypesAdd.value}</div>}

</div>
);
}
}

// Render it
ReactDOM.render(
<MyComponent/>,
document.getElementById("react")
);
button {
width: 100px;
height: 20px;
display: block;
margin: 10px 0;
}
<div id="react"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

关于javascript - react 引用值为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53423927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com