API未使用来自AutocompleteInput/React Admin的值触发

API未使用来自AutocompleteInput/React Admin的值触发,input,autocomplete,react-admin,Input,Autocomplete,React Admin,我正在使用自动完成输入,并试图将选择值发送到api 请按以下方式查找我的代码: export const PostFilter_Search = (props) => { const dp = useDataProvider(); const [acTypeValue, setAcType] = useState<any[]>([]); useEffect(() => { dp.getCustomUrl(`/DefectMelDraftNexts`)

我正在使用自动完成输入,并试图将选择值发送到api

请按以下方式查找我的代码:

export const PostFilter_Search = (props) => {
const dp = useDataProvider();
const [acTypeValue, setAcType] = useState<any[]>([]);

useEffect(() => {
    dp.getCustomUrl(`/DefectMelDraftNexts`)
        .then(response => {
            var items: any[] = response.data.items;

            var temp = items.filter((thing, i, arr) => {
                return arr.indexOf(arr.find(t => t.acType === thing.acType)) === i;
            })

            setAcType(Object.assign(acTypeValue, temp));
        });
}, [])
return (
    <Filter {...props} >

        <AutocompleteInput label="AcType" source="acType" translateChoice={false} allowEmpty={false} 
            choices={acTypeValue}
            optionText="acType"
            optionValue="acType"
        />
    </Filter >

)
 0:
 acSeries: "RR-XWB"
 acSn: "0403 0421 0435 0442 0454 0496"
 acType: "A350"
 catRating: null
 chapter: "42"
 __proto__: Object
acType是需要发送到api进行过滤的值

但是,筛选器将作为filter=(acType)发送到api,但不会与所选值一起发送。例如过滤器=(acType=A350)

你能帮帮我吗

感谢您的帮助


提前谢谢

问题已通过以下代码解决:

 export const PostFilter_Search = (props) => {
 const dp = useDataProvider();
 const [acTypeValue, setAcType] = useState<any[]>([]);
 const [melNumberValue, setMelNumber] = useState<any[]>([]);

useEffect(() => {
    dp.getCustomUrl(`/DefectMelDraftNexts`)
        .then(response => {
            var items: any[] = response.data.items;

            var temp_acType = items.filter((thing, i, arr) => {
                return arr.indexOf(arr.find(t => t.acType === thing.acType)) === i;
            })

            var temp_melNumber = items.filter((thing, i, arr) => {
                return arr.indexOf(arr.find(t => t.melNumber === thing.melNumber)) === i;
            })

            setAcType(Object.assign(melNumberValue, temp_melNumber));
            setAcType(Object.assign(acTypeValue, temp_acType));

        });
}, [])
return (
    <Filter {...props} >

        <AutocompleteInput label="Mel Number" source="DefectMelDraftNexts.any(v => v.MelNumber == $)" translateChoice={false} allowEmpty={false}
            choices={melNumberValue}
            optionText="melNumber"
            optionValue="melNumber"
        />

        <AutocompleteInput label="AcType" source="DefectMelDraftNexts.any(v => v.AcType == $)" translateChoice={false} allowEmpty={false}
            choices={acTypeValue}
            optionText="acType"
            optionValue="acType"
        />


    </Filter >

)
export const PostFilter\u Search=(道具)=>{
const dp=useDataProvider();
常量[acTypeValue,setAcType]=useState([]);
const[melNumberValue,setMelNumber]=useState([]);
useffect(()=>{
dp.getCustomUrl(`/DefectMelDraftNexts`)
。然后(响应=>{
变量项:任意[]=response.data.items;
var temp_acType=items.filter((thing,i,arr)=>{
返回arr.indexOf(arr.find(t=>t.acType===thing.acType))==i;
})
var temp_melNumber=items.filter((thing,i,arr)=>{
返回arr.indexOf(arr.find(t=>t.melNumber===thing.melNumber))==i;
})
setAcType(Object.assign(melNumberValue,tempmelnumber));
setAcType(Object.assign(acTypeValue,temp_acType));
});
}, [])
返回(
)
})