[英]How to get rid of console warning "enableRowSelect has been deprecated... Please use rowSelection instead.""
[英]Ant design Form "Warning: `callback` is deprecated. Please return a promise instead." Error in custom rules
我對表單元素做了自定義規則。 但是當我使用帶有承諾的自定義錯誤消息時,它會給出該錯誤。 我該怎么做才能修復它? 我的表單元素:
該規則是檢查 PriceMax 和 PriceMin。 並驗證 PriceMax 是否大於 PriceMin。 如果不是,它應該向我顯示錯誤消息。所以我使用了 Promise 但它在控制台中發出警告,例如:“警告: callback
已被棄用。請返回一個承諾。” 自定義規則錯誤”
<Form.Item name="PriceMin" label="Minimum fiyat" required>
<Input
type="number"
name="Input"
placeholder="En düşük fiyat"
onChange={(e) => updateForm(e.target.value, "PriceMin")}
/>
</Form.Item>
<Form.Item
name="PriceMax"
label="Maximum fiyat"
dependencies={["PriceMin"]}
rules={[
{
required: true,
message: "Please confirm your password!",
},
({ getFieldValue }) => ({
validator(rule, value) {
if (
parseInt(value) < parseInt(getFieldValue("PriceMin"))
) {
return Promise.reject(
"Maksimum fiyat minimum fiyattan az olamaz!" //When i delete that row its fix warning, but i need have that error message.
);
}
},
}),
]}
>
<Input
name="Input"
type="number"
disabled={
MyForm.getFieldValue("PriceMin") === undefined ||
MyForm.getFieldValue("PriceMin") === ""
? true
: false
}
placeholder="En yüksek fiyat"
onChange={(e) => updateForm(e.target.value, "PriceMax")}
/>
</Form.Item>
您必須按照示例中所示進行操作
https://ant.design/components/form/#components-form-demo-register
驗證器應始終返回成功和錯誤的承諾
({ getFieldValue }) => ({
validator(rule, value) {
if (parseInt(value, 10) < parseInt(getFieldValue("PriceMin"), 10)) {
return Promise.reject(
"Maksimum fiyat minimum fiyattan az olamaz!");
}
return Promise.resolve();
}
})
你也錯過了 parseInt 中的一個基數參數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.