npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

react-data-entry

v1.0.9

Published

`react-data-entry` là một thư viện cung cấp các component nhập liệu (data entry) dành cho React, được tối ưu hóa để dễ dàng sử dụng và tuỳ biến. Thư viện này bao gồm các component cho việc chọn ngày, khoảng ngày và nhập liệu tiền tệ, với nhiều tuỳ chọn li

Downloads

56

Readme

react-data-entry

Mô tả

react-data-entry là một thư viện cung cấp các component nhập liệu (data entry) dành cho React, được tối ưu hóa để dễ dàng sử dụng và tuỳ biến. Thư viện này bao gồm các component cho việc chọn ngày, khoảng ngày và nhập liệu tiền tệ, với nhiều tuỳ chọn linh hoạt như định dạng đầu vào, kích thước, và giới hạn giá trị.

Cài đặt

Để cài đặt thư viện, bạn có thể sử dụng npm hoặc yarn:

npm install react-data-entry
yarn add react-data-entry

Sử dụng

Component CCalendar

import React, { useState } from "react";
import { CCalendar } from "react-data-entry";

const MyComponent = () => {
  const [date, setDate] = useState("");

  const handleChange = (e) => {
    setDate(e.target.value);
  };

  return (
    <CCalendar
      label="Select Date"
      name="calendar"
      placeholder="Choose a date"
      value={date}
      handleChange={handleChange}
      required={true}
      error="Date is required"
      picker="day"
      format="YYYY-MM-DD"
      width="300px"
    />
  );
};

export default MyComponent;

Props

  • label: Nhãn cho trường nhập liệu (Tùy chọn).
  • required: Có yêu cầu nhập dữ liệu hay không (Mặc định: false).
  • name: Tên của trường input.
  • placeholder: Văn bản gợi ý cho trường nhập liệu (Tùy chọn).
  • handleChange: Hàm xử lý sự kiện khi giá trị của input thay đổi.
  • value: Giá trị của input (chuỗi).
  • labelWidth: Chiều rộng của nhãn (Mặc định: 100%).
  • error: Thông báo lỗi (Tùy chọn).
  • width: Chiều rộng của input (Mặc định: 100%).
  • picker: Loại picker (week, month, year, quarter, day).
  • format: Định dạng hiển thị của ngày (chuỗi định dạng).
  • size: Kích thước của input (large, middle, small). Mặc định: middle.
  • formatInput: Định dạng đầu vào (chuỗi).
  • view: Hiển thị theo year, month, day.
  • min: Ngày nhỏ nhất có thể chọn.
  • max: Ngày lớn nhất có thể chọn.

Component CCalendarRange

import React, { useState } from "react";
import { CCalendarRange } from "react-data-entry";

const MyComponent = () => {
  const [range, setRange] = useState(["", ""]);

  const handleChange = (e) => {
    setRange(e.target.value);
  };

  return (
    <CCalendarRange
      label="Select Date Range"
      name="calendarRange"
      placeholder="Choose a date range"
      value={range}
      handleChange={handleChange}
      required={true}
      error="Range is required"
      format="YYYY-MM-DD"
      width="400px"
    />
  );
};

export default MyComponent;

Props

  • label: Nhãn cho trường nhập liệu (Tùy chọn).
  • required: Có yêu cầu nhập dữ liệu hay không (Mặc định: false).
  • name: Tên của trường input.
  • placeholder: Văn bản gợi ý cho trường nhập liệu (Tùy chọn).
  • handleChange: Hàm xử lý sự kiện khi giá trị của input thay đổi.
  • value: Giá trị của input (mảng chuỗi).
  • labelWidth: Chiều rộng của nhãn (Mặc định: 100%).
  • error: Thông báo lỗi (Tùy chọn).
  • width: Chiều rộng của input (Mặc định: 100%).
  • format: Định dạng hiển thị của ngày (chuỗi định dạng).
  • size: Kích thước của input (large, middle, small). Mặc định: middle.
  • formatInput: Định dạng đầu vào (chuỗi).
  • view: Hiển thị theo year, month, day.
  • min: Ngày nhỏ nhất có thể chọn.
  • max: Ngày lớn nhất có thể chọn.

Component CCurrency

import React, { useState } from "react";
import { CCurrency } from "react-data-entry";

const MyComponent = () => {
  const [amount, setAmount] = useState(0);

  const handleChange = (value) => {
    setAmount(value);
  };

  return (
    <CCurrency
      label="Enter Amount"
      name="currency"
      placeholder="Enter amount"
      value={amount}
      handleChange={handleChange}
      required={true}
      min={0}
      max={10000}
      prefix="$"
      width="200px"
    />
  );
};

export default MyComponent;

Props

  • label: Nhãn cho trường nhập liệu (Tùy chọn).
  • required: Có yêu cầu nhập dữ liệu hay không (Mặc định: false).
  • name: Tên của trường input.
  • placeholder: Văn bản gợi ý cho trường nhập liệu (Tùy chọn).
  • handleChange: Hàm xử lý sự kiện khi giá trị của input thay đổi.
  • value: Giá trị của input (số).
  • labelWidth: Chiều rộng của nhãn (Mặc định: 100%).
  • error: Thông báo lỗi (Tùy chọn).
  • width: Chiều rộng của input (Mặc định: 100%).
  • min: Giá trị nhỏ nhất có thể nhập.
  • max: Giá trị lớn nhất có thể nhập.
  • size: Kích thước của input (large, middle, small). Mặc định: middle.
  • suffix: Chuỗi hiển thị ở cuối input (Tùy chọn).
  • prefix: Chuỗi hiển thị ở đầu input (Tùy chọn).
  • props: Các thuộc tính bổ sung khác (Tùy chọn).

Sử dụng

Component CEditor

import React, { useState } from "react";
import CEditor from "path-to-your-component";

const MyComponent = () => {
  const [content, setContent] = useState("");

  const handleChange = (value) => setContent(value);

  return (
    <CEditor
      label="Enter Content"
      name="editor"
      placeholder="Type here..."
      value={content}
      handleChange={handleChange}
      required
      error="Content is required"
      width="100%"
    />
  );
};

export default MyComponent;

Component CSelect

import React, { useState } from "react";
import CSelect from "path-to-your-component";

const MyComponent = () => {
  const [selected, setSelected] = useState([]);
  const options = [
    { label: "Option 1", value: "1" },
    { label: "Option 2", value: "2" },
  ];

  const handleChange = (value) => setSelected(value);

  return (
    <CSelect
      label="Select Options"
      name="select"
      placeholder="Choose options"
      value={selected}
      handleChange={handleChange}
      required
      error="Selection is required"
      options={options}
      type="multiple"
      width="100%"
    />
  );
};

export default MyComponent;

Component CTextarea

import React, { useState } from "react";
import CTextarea from "path-to-your-component";

const MyComponent = () => {
  const [text, setText] = useState("");

  const handleChange = (e) => setText(e.target.value);

  return (
    <CTextarea
      label="Enter Text"
      name="textarea"
      placeholder="Type your text"
      value={text}
      handleChange={handleChange}
      required
      error="Text is required"
      width="100%"
      maxLength={500}
    />
  );
};

export default MyComponent;

Component CTextField

import React, { useState } from "react";
import CTextField from "path-to-your-component";

const MyComponent = () => {
  const [input, setInput] = useState("");

  const handleChange = (e) => setInput(e.target.value);

  return (
    <CTextField
      label="Enter Input"
      name="textfield"
      placeholder="Type here"
      value={input}
      handleChange={handleChange}
      required
      error="Input is required"
      width="100%"
      type="text"
    />
  );
};

export default MyComponent;

Props

  • label: Nhãn (Tùy chọn).
  • required: Yêu cầu nhập (Mặc định: false).
  • name: Tên input.
  • placeholder: Văn bản gợi ý (Tùy chọn).
  • handleChange: Hàm xử lý thay đổi.
  • value: Giá trị input.
  • error: Thông báo lỗi (Tùy chọn).
  • width: Chiều rộng input (Mặc định: 100%).
  • options: Các tùy chọn cho CSelect.
  • type: Loại input cho CSelectCTextField.
  • maxLength: Độ dài tối đa cho CTextarea.

README.md này mô tả cách sử dụng các component CEditor, CSelect, CTextarea, và CTextField trong react-data-entry.