亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

React 代碼中的 ESLint 無返回分配和無參數重新分配錯誤

React 代碼中的 ESLint 無返回分配和無參數重新分配錯誤

慕標5832272 2023-12-14 15:21:32
我在 React App 中有這段代碼來加載我的聊天消息:  const chatBubbles = dummyData.map((obj, i = 0) => {    <div className={`${classes.bubbleContainer} ${obj.direction}`} key={i}>      <div key={(i += 1)} className={classes.bubble}>        <div className={classes.button}>{obj.message}</div>      </div>    </div>;  });  return <div className={classes.container}>{chatBubbles}</div>;這是可行的,但我在 ESLint 中遇到兩個錯誤,我不知道如何修復它  error  Expected to return a value in arrow function                           array-callback-return  error  Expected an assignment or function call and instead saw an expression  no-unused-expressions  error  Assignment to function parameter 'i'                                   no-param-reassign我怎樣才能重寫這個代碼片段以便我的 Eslint 能夠接受?
查看完整描述

3 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

第一個問題:沒有理由設置默認值!


const chatBubbles = dummyData.map((obj, i = 0) => { <-- there should not be a `= 0`

第二個問題:區塊內不返回


const chatBubbles = dummyData.map((obj, i = 0) => { <-- there { should be a ( <div/> ) or { return (<div/>) }

第三個問題:由map設置的遞增索引


(i += 1) <-- Why are you increasing the variable i? 

const chatBubbles = dummyData.map((obj, i) => (

  <div className={`${classes.bubbleContainer} ${obj.direction}`} key={i}>

    <div key={(i + 1)} className={classes.bubble}>

      <div className={classes.button}>{obj.message}</div>

    </div>

  </div>;

));

return <div className={classes.container}>{chatBubbles}</div>;

我不知道你為什么要在第二個鍵上添加一個......


查看完整回答
反對 回復 2023-12-14
?
大話西游666

TA貢獻1817條經驗 獲得超14個贊

也許嘗試這樣做:


    const chatBubbles = dummyData.map((obj, i) => {

    return (

        <div className={`${classes.bubbleContainer} ${obj.direction}`} key={i}>

            <div key={(i + 1)} className={classes.bubble}>

                <div className={classes.button}>{obj.message}</div>

            </div>

        </div>;

    )

});

return <div className={classes.container}>{chatBubbles}</div>;

error  Expected an assignment or function call and instead saw an expression并且error  Expected to return a value in arrow function- 你需要從地圖回調中返回一些東西


error  Assignment to function parameter 'i'- 你不應該重新分配i (i += 1更改為i + 1)


查看完整回答
反對 回復 2023-12-14
?
largeQ

TA貢獻2039條經驗 獲得超8個贊

i在數組上使用該函數時,不需要預先分配map()。將第一行替換為:

  const chatBubbles = dummyData.map((obj, i) => {


查看完整回答
反對 回復 2023-12-14
  • 3 回答
  • 0 關注
  • 188 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號