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

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

材質(zhì) UI 自動(dòng)完成,并銷毀重復(fù)表單值

材質(zhì) UI 自動(dòng)完成,并銷毀重復(fù)表單值

精慕HU 2022-09-16 21:09:01
我正在嘗試將材質(zhì) UI 的自動(dòng)完成組件與 redux 向?qū)Т绑w一起使用我能夠鏈接材料UI提供的自動(dòng)完成,但是當(dāng)我回到上一頁并返回到自動(dòng)完成字段所在的第二頁時(shí),盡管edictOnUnmount設(shè)置為false,該字段仍被銷毀。(所有其他字段不會(huì)被銷毀,但只有第 2 頁中使用材料 UI 自動(dòng)完成功能的字段)實(shí)際上,我不認(rèn)為它被破壞了,因?yàn)橹等匀淮嬖?,你只是在輸入中看不到它此外,?dāng)我單擊“提交”時(shí),“主要愛好”部分的值會(huì)通過,但多個(gè)愛好部分的值無法通過。任何人都可以看看,看看出了什么問題?謝謝
查看完整描述

2 回答

?
縹緲止盈

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

您需要定義“自動(dòng)完成”的值屬性,以便在再次訪問表單時(shí)顯示所選值。


您必須注意,Hobby 表單中的兩個(gè)字段需要使用不同的名稱進(jìn)行定義


此外,多選自動(dòng)完成的更改值需要通知 reduxForm 有關(guān)更改的信息


多個(gè)完成.js


import React from "react";

import { TextField } from "@material-ui/core";

import { Autocomplete } from "@material-ui/lab";

const hobbies = [

  { title: "WATCHING MOVIE" },

  { title: "SPORTS" },

  { title: "MUSIC" },

  { title: "DRAWING" }

];


const MultipleComplete = ({

  input,

  meta: { touched, error, submitFailed }

}) => {

  const { onChange, ...rest } = input;

  return (

    <div>

      <Autocomplete

        multiple

        limitTags={2}

        value={input.value || []}

        id="multiple-limit-tags"

        options={hobbies}

        onChange={(e, newValue) => {

          onChange(newValue);

        }}

        getOptionLabel={option => option.title}

        getOptionSelected={(option, value) => option.title === value.title}

        renderInput={params => (

          <TextField

            {...params}

            variant="outlined"

            placeholder="Choose Multiple Hobbies"

            fullWidth

          />

        )}

      />

    </div>

  );

};

export default MultipleComplete;

自動(dòng)滾球完成.js


import React from "react";

import { TextField } from "@material-ui/core";

import { Autocomplete } from "@material-ui/lab";

const hobbies = [

  { title: "WATCHING MOVIE" },

  { title: "SPORTS" },

  { title: "MUSIC" },

  { title: "DRAWING" }

];


const AutoHobbyComplete = ({

  input,

  meta: { touched, error, submitFailed }

}) => {

  const getSelectedOption = () => {

    return hobbies.find(o => o.title === input.value);

  };

  const { onChange, ...rest } = input;

  return (

    <div>

      <Autocomplete

        autoSelect

        value={getSelectedOption()}

        options={hobbies}

        autoHighlight

        getOptionLabel={option => option.title}

        onChange={(event, newValue) => onChange(newValue)}

        getOptionSelected={(option, value) => {

          return option.title === value.title || option.title === input.value;

        }}

        renderInput={params => {

          return (

            <TextField

              {...params}

              {...rest}

              value={input.value}

              variant="outlined"

              fullWidth

            />

          );

        }}

      />

    </div>

  );

};


export default AutoHobbyComplete;


查看完整回答
反對 回復(fù) 2022-09-16
?
當(dāng)年話下

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

看來你是對的,值只是沒有正確顯示。如果能夠從 redux 表單中獲取值,則可以將該值作為 inputValue 傳遞給自動(dòng)完成。這將在文本框中顯示該值。確保使用輸入值而不是值。


 <Autocomplete

        inputValue={//this is where your redux form value should be displayed}

        autoSelect

        options={hobbies}

        autoHighlight

        getOptionLabel={option => option.title}

        onChange={(event, newValue) => console.log(newValue)}

        getOptionSelected={(option, value) => option.title === value.title}

        renderInput={params => (

          <TextField {...params} {...input} value="test" variant="outlined" fullWidth />

        )}

      />


查看完整回答
反對 回復(fù) 2022-09-16
  • 2 回答
  • 0 關(guān)注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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