第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 React 中單擊按鈕時(shí),如何直接在輸入字段中的任意位置插入文本?

在 React 中單擊按鈕時(shí),如何直接在輸入字段中的任意位置插入文本?

阿晨1998 2021-06-10 18:57:43
假設(shè)我有一個(gè)輸入字段:<input type="text" value={this.state.title} />現(xiàn)在它有一個(gè)值,例如“早上好!”。我想要做的是能夠在輸入字段中的任何位置單擊特定按鈕時(shí)將一些預(yù)定義的文本插入到輸入字段中。例如,當(dāng)我單擊"[First Name]"/"[LastName]"按鈕時(shí),輸入字段的值可以變?yōu)?,例如“早上?[名字]”。我可以通過(guò)獲取焦點(diǎn)輸入,將其分配給狀態(tài),然后使用它來(lái)知道要更改狀態(tài)中的哪個(gè)鍵,從而在當(dāng)前文本的末尾添加:addCodeText(value) {    const { currFocusedInput } = this.state;    this.setState({      [currFocusedInput]: `${        this.state[currFocusedInput]      } [${value}]`,    });  }但是,正如我所提到的,這只會(huì)添加到文本的末尾。我希望能夠直接插入輸入標(biāo)簽/元素而不是更改狀態(tài),以便我可以選擇插入的位置(無(wú)論如何,輸入元素是受控輸入)。我的意思是我可以將光標(biāo)放在“早上好”前面的輸入字段中,當(dāng)我單擊按鈕時(shí),結(jié)果值將是“[名字],早上好!”。在我當(dāng)前的示例中,它總是附加在字符串值的末尾。我該怎么做?
查看完整描述

2 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊

使用一個(gè)ref. 使用 React Hooks 的類似以下內(nèi)容?


   function App(){

     const ref = useRef('');


     const [val,setVal] = useState('Good morning');


     function onClick() {

        ref.current.value = `${val} you!`;

     }


     return( 

         <div>

            <Button onClick={onClick}>Click</Button>

            <Input ref={ref} />

         </div>

     );

   }


查看完整回答
反對(duì) 回復(fù) 2021-06-18
  • 2 回答
  • 0 關(guān)注
  • 221 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)