Reactjs TypeError:无法读取属性';价值';输入时未定义的数量(tags.js:64)
我做错了什么 我试图使用管理我的表单状态,但我得到一个错误: 未捕获的TypeError:无法读取未定义的属性“值” 输入时(tags.js:64) 在mountIndeterminateComponent(react dom.development.js:10400) 首先,我创建了一个包装器输入Reactjs TypeError:无法读取属性';价值';输入时未定义的数量(tags.js:64),reactjs,Reactjs,我做错了什么 我试图使用管理我的表单状态,但我得到一个错误: 未捕获的TypeError:无法读取未定义的属性“值” 输入时(tags.js:64) 在mountIndeterminateComponent(react dom.development.js:10400) 首先,我创建了一个包装器输入 // MyInput import Link, { LinkedComponent } from 'valuelink'; import { Input } from 'valuelink/tags
// MyInput
import Link, { LinkedComponent } from 'valuelink';
import { Input } from 'valuelink/tags';
export default class extends LinkedComponent /* I tryed extends from PureComponent too */ {
state = {};
render() {
<Input {...rest} />
}
}
//MyInput
从“valuelink”导入链接,{LinkedComponent};
从'valuelink/tags'导入{Input};
导出默认类扩展LinkedComponent/*我也尝试从PureComponent扩展*/{
状态={};
render(){
}
}
我正在尝试在另一个组件中使用
import Link, { LinkedComponent } from 'valuelink';
import MyInput from 'components/MyInput';
export default class extends LinkedComponent {
render() {
const linked = this.linkAll();
return <MyInput valueLink={linked.fieldTest} />
}
}
导入链接,{LinkedComponent}来自“valuelink”;
从“组件/MyInput”导入MyInput;
导出默认类扩展LinkedComponent{
render(){
const linked=this.linkAll();
返回
}
}
显然,valueLink已被弃用(而且,很久以前)。改用value和onChange。请参见说明。要修复。。我需要显式声明状态中的所有字段
state = {
field1: undefined
};
是的,这个答案是正确的:
state = {
field1: undefined
};
原因是组件.linkAll()
无法猜测空状态的可能属性。它们必须被初始化。此外,出于其他一些原因,这是一个很好的实践
也许,我应该将其添加到文档中(我是
valuelink
package的作者)。当然,它并没有遭到反对。这是“功能完成”:。您不需要命名类吗?您正在扩展它们是的,但没有命名它们。我不需要命名类。只是导出。valuelink
我使用的不是React。。来自