You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

vue-textfield

Package Overview
Dependencies
Maintainers
0
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue-textfield

A Vue 3 text field component with dynamic validation using Yup, designed with modern UI/UX features.

1.2.1
latest
npmnpm
Version published
Maintainers
0
Created
Source

vue-textfield

A Vue 3 text field component with dynamic validation using Yup, designed with modern UI/UX features.

Installation

Install the component via npm:

npm install vue-textfield

Usage

Import and Register

In your Vue 3 application, import and register the TextField component.
<template>
  <div id="app">
    <TextField
      v-model="textValue"
      type="text"
      label="Enter text"
      required
      minLength="3"
      maxLength="10"
      customError="Please enter valid text"
      appendIcon="account"
    />
    <TextField
      v-model="emailValue"
      type="email"
      label="Enter email"
      required
      customError="Please enter a valid email"
      prePendInnerIcon="email"
    />
    <TextField
      v-model="phoneValue"
      type="tel"
      label="Enter phone number"
      required
      minLength="10"
      maxLength="15"
      customError="Please enter a valid phone number"
    />
    <TextField
      v-model="dateValue"
      type="date"
      label="Enter date"
      required
      customError="Please enter a valid date"
      min="2024-07-01"
      max="2024-09-01"
    />
      <TextField 
       v-model="selctedtValue"
       @input="SelectValue"
       type="password"
       label="Enter Password"
       :showPassword="true"  
       />
    <p>Text Value: {{ textValue }}</p>
    <p>Email Value: {{ emailValue }}</p>
    <p>Phone Value: {{ phoneValue }}</p>
    <p>Date Value: {{ dateValue }}</p>
  </div>
</template>

<script>
import { ref } from 'vue';
import TextField from 'vue-textfield';

export default {
  name: 'App',
  components: {
    TextField
  },
  setup() {
    const textValue = ref('');
    const emailValue = ref('');
    const phoneValue = ref('');
    const dateValue = ref('');

    return {
      textValue,
      emailValue,
      phoneValue,
      dateValue
    };
  }
};
</script>

<style>
/* Add any necessary styles here */
</style>

#Customization

/* Example CSS */
.textfield-container {
  /* Your styles here */
}
.textfield-inner-container {
  /* Your styles here */
}
.input-error {
  border-color: red;
}
.labelError {
  color: red;
}
.icon-container, .after-icon-container {
  /* Your styles here */
}

Methods

The TextField component provides the following methods:

validate

You can call the validate method to manually trigger validation.

Example

<template>
  <div id="app">
    <TextField
      v-model="exampleValue"
      type="text"
      label="Example Input"
      required
      minLength="5"
      maxLength="15"
      customError="Invalid input"
    />
    <button @click="manualValidate">Validate Manually</button>
    <p>Example Value: {{ exampleValue }}</p>
  </div>
</template>

<script>
import { ref } from 'vue';
import TextField from 'vue-textfield';

export default {
  name: 'App',
  components: {
    TextField
  },
  setup() {
    const exampleValue = ref(null);

    const manualValidate = () => {
      // Assuming validate method is exposed in TextField component
      this.$refs.exampleTextField.validate();
    };

    return {
      exampleValue,
      manualValidate
    };
  }
};
</script>

<style>
/* Add any necessary styles here */
</style>

Props

Prop NameTypeDefaultDescription
modelValueString, Number''The value of the input field.
typeString'text'The type of the input field (text, email, tel, number, password, date).
customErrorString''Custom error message.
labelString''The label for the input field.
requiredBooleanfalseWhether the input field is required.
minLengthNumber0Minimum length for the input field.
maxLengthNumbernullMaximum length for the input field.
requiredErrorString'This field is required'Error message for the required validation.
minValueNumber0Minimum value for the input field.
placeholderString''Placeholder text for the input field.
prePendInnerIconString, ObjectnullIcon to display inside the input field, before the text.
appendIconString, ObjectnullIcon to display inside the input field, after the text.
showPasswordBooleanfalseToggle to show/hide password.
minNumbernullMinimum value for number and date input fields.
maxNumbernullMaximum value for number and date input fields.

Events

The TextField component emits the following events:

EventDescription
update:modelValueEmitted when the value of the input changes.

License

Make sure to replace vue-textfield with the actual name of your npm package. This README file covers the basic usage, props, events, and customization options for your Vue 3 text field component.

Explanation

  • Table Structure: A table is used to display the props in a clear, organized manner.
  • Prop Columns: Provided a detailed table of all the props supported by the TextField component, including their types, default values, and descriptions.
  • Methods: Described the validate method and provided an example of how to manually trigger validation.
  • Example: Included an example that demonstrates how to use the component and call its methods.
  • Events: Listed the events emitted by the TextField component.
  • License: Mentioned the license under which the package is released.

By following this structure, users will have a comprehensive guide on how to use your vue-textfield package effectively.

Keywords

vue

FAQs

Package last updated on 02 Aug 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts