我收到一個我無法理解或動搖的錯誤。我想要做的是單擊按鈕時,我試圖更改我創建的表單中文本欄位中的值,但是我收到此錯誤:
無法為實體之一的字串創建屬性標簽。

這是我嘗試更改值的函式:
getReport(ReportList) {
this.state.SPCCODE.label = 'NA';
}
我在該州宣布 SPCCODE 為
SPCCODE: '',
我在渲染中將 SPCCODE 宣告為條件渲染,如下所示:
let DDL;
const DDLValue = servicecode.label;
if (DDLValue == 'Direct') {
DDL = <> </>;
} else if (DDLValue == 'STYD') {
DDL = <> </>;
} else {
DDL = (
<Col lg="6" style={{ marginTop: '0rem' }}>
<Label for="spcc">SPC</Label>
<Select
className="select"
id="spc"
// value={servicecode}
placeholder="Search spcCode..."
value={hide ? null : SPCCODE}
onChange={this.handleChangeSPC}
options={this.state.spcCode}
isDisabled={this.state.disable}
styles={{
control: (provided, state) => ({
...provided,
boxShadow: 'none',
// borderBottom: "1px dotted pink",
borderBottom: this.state.isEmpty4 ? '1px solid red' : '1px solid black',
}),
}}
/>
</Col>
);
}
我正在處理此函式中的 SPC CODE 更改:
handleChangeSPC = SPCCODE => {
this.setState({ hide: false });
this.setState({ SPCCODE });
var spc_label = SPCCODE.label;
this.setState({ spc_label });
};
我正在從這樣的子組件表中呼叫 g getReport() 函式
passVariable() {
this.props.getReport(this.state.ReportList);
}
我稱之為 onClick
在研究時,我發現它可能會顯示錯誤,因為變數是不可變的,但沒有在 const 中宣告它。請幫助不知道為什么會顯示此錯誤?
uj5u.com熱心網友回復:
問題是您SPCCODE在狀態中宣告為字串,然后嘗試訪問其中不存在的屬性label。這是不可能的,并拋出型別錯誤。
要解決它,您必須像文字物件一樣宣告它,例如:
SPCCODE: {label:''}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/361216.html
標籤:javascript 反应 细绳
上一篇:嘗試匯入庫時出錯
