+1 vote
in VueJS by

Describe about validations available for props?

1 Answer

0 votes
by
Vue provides validations such as types, required fields, default values along with customized validations. You can provide an object with validation requirements to the value of props as below,

Let's take an example of user profile Vue component with possible validations,

Vue.component('user-profile', {

  props: {

    // Basic type check (`null` matches any type)

    age: Number,

    // Multiple possible types

    identityNumber: [String, Number],

    // Required string

    email: {

      type: String,

      required: true

    },

    // Number with a default value

    minBalance: {

      type: Number,

      default: 10000

    },

    // Object with a default value

    message: {

      type: Object,

      // Object or array defaults must be returned from

      // a factory function

      default: function () {

        return { message: 'Welcome to Vue' }

      }

    },

    // Custom validator function

    location: {

      validator: function (value) {

        // The value must match one of these strings

        return ['India', 'Singapore', 'Australia'].indexOf(value) !== -1

      }

    }

  }

})
...