API未使用来自AutocompleteInput/React Admin的值触发
我正在使用自动完成输入,并试图将选择值发送到api 请按以下方式查找我的代码: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`)
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));
});
}, [])
返回(
)
})