EN

Search
Close this search box.

موستانگ، وحشیِ دوست داشتنی

پاسخ داده شد
0
0

Validation در react با استفاده از کامپوننت MaterialTable چگونه انجام می شود؟

  • شما باید برای ارسال دیدگاه شوید
پاسخ عالی
0
0

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'));
  • شما باید برای ارسال دیدگاه شوید
نمایش 1 نتیجه
پاسخ شما
اگر قبلاً حساب کاربری دارید با پر کردن فیلد های زیر یا به عنوان مهمان ارسال کنید.
نام*
ایمیل*
وب سایت