پاسخ داده شد
Validation در react با استفاده از کامپوننت MaterialTable چگونه انجام می شود؟
- فرشته حقیقی 3 سال قبل سوال کرد
- شما باید برای ارسال دیدگاه وارد شوید
پاسخ عالی
MaterialTable کنترل های زیر را بر روی ورودی های فرم فراهم می کند:
- boolean: در صورتیکه ورودی غلط باشد یک خط قرمز زیر آن فیلد قرار می دهد.
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
import MaterialTable from 'material-table'
class App extends Component {
const columns = [
{ title: 'Name', field: 'Name',rowData => rowData.Name !== '' },
{ title: 'LastName', field: 'LastName',validate: rowData => rowData.LastName.length > 3 },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric', validate: rowData =>
rowData.birthYear > 1900}
];
const data = [
{ name: 'Sara', LastName: 'Baran', birthYear: 1987}
];
render() {
return (
<div style={{ maxWidth: '100%' }}>
<MaterialTable
columns={columns}
data={data }
title="NAMES"
/>
</div>
)
}
}
ReactDOM.render(<App />, document.getElementById('react-div'));
در اینجا اگر نام خالی باشد و یا اگر فامیل کمتر از 3 کاراکتر و سال تولد کوچکتر از 1900 باشد یک خط قرمز زیر فیلدها قرار می گیرد.
- string : اگر ورودی صحیح نباشد یک خط قرمز و یک پیغام نمایش می دهد.
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
import MaterialTable from 'material-table'
class App extends Component {
const columns = [
{ title: 'Name', field: 'Name',validate: rowData => rowData.Name=== '' ? 'Name cannot be empty' : '', },
{ title: 'LastName', field: 'LastName', validate: rowData => rowData.LastName.length < 2 ? 'LastName must be have 3 chars' : '',},
{ title: 'Birth Year', field: 'birthYear', type: 'numeric', validate: rowData => rowData.birthYear < 1900 ? 'Birthyear must be after 1900' : '',}
];
const data = [
{ name: 'Sarra', LastName: 'Baran', birthYear: 1987}
];
render() {
return (
<div style={{ maxWidth: '100%' }}>
<MaterialTable
columns={columns}
data={data }
title="NAMES"
/>
</div>
)
}
}
ReactDOM.render(<App />, document.getElementById('react-div'));
- فرشته حقیقی 3 سال قبل پاسخ داد
- آخرین ویرایش 3 سال قبل
- شما باید برای ارسال دیدگاه وارد شوید
پاسخ شما