Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用类属性作为react hook常量的对象项_Javascript_Reactjs_Typescript_React Hooks - Fatal编程技术网

Javascript 如何使用类属性作为react hook常量的对象项

Javascript 如何使用类属性作为react hook常量的对象项,javascript,reactjs,typescript,react-hooks,Javascript,Reactjs,Typescript,React Hooks,因此,我尝试使用useState创建一个常量,它将是名为DraftMessage的类的属性,我可以在以后值更改时填充该类 const [draftMessage, setDraftMessage] = useState<DraftMessage>({ id: undefined, group: undefined, recipients: [], subject: '', text: '', attachments: [],

因此,我尝试使用useState创建一个常量,它将是名为DraftMessage的类的属性,我可以在以后值更改时填充该类

  const [draftMessage, setDraftMessage] = useState<DraftMessage>({
    id: undefined,
    group: undefined,
    recipients: [],
    subject: '',
    text: '',
    attachments: [],
    urgent: false,
    acknowledgementRequired: false,
    contentChanged: false,
  });
const[draftMessage,setDraftMessage]=useState({
id:未定义,
组:未定义,
收件人:[],
主题:'',
文本:“”,
附件:[],
紧急:错,
确认要求:错误,
内容更改:错误,
});
但我得到了这个错误

类型为“{id:undefined;group:undefined;recipients:never[];subject:string;text:string;attachments:never[];紧急:false;AcknowledgetRequired:false;contentChanged:false;}”的参数不能分配给类型为“DraftMessage”(()=>DraftMessage)”的参数。 类型“{id:undefined;组:undefined;收件人:never[];主题:string;文本:string;附件:never[];紧急:false;AcknowlementRequired:false;contentChanged:false;}”缺少类型“DraftMessage”中的以下属性:toggleUrgent、ToggleAcknowlementRequired、clean、setText和103 more.ts(2345)


有人能解释一下发生的问题/我可以使用的解决方案吗?这很令人沮丧,因为我需要使用DraftMessage中的方法,在这种情况下,我无法…。

DraftMessage是一种类型还是一个接口?它是一个扩展为Record的类,那么为什么要指定对象文字?我的意思是,错误清楚地表明您缺少一些属性(如100+),您指定对象文字是什么意思?(感谢您帮助我顺便说一句)您发送到
useState()
的默认状态不是
DraftMessage
,而是对象文本,即
{prop:value,prop2:value}
(请参阅)