Input field component to display a formatted currency value based on Vue.
Works with Vue 2.*
<script src="https://unpkg.com/accounting-js"></script>
<script src="https://unpkg.com/vue"></script>
<script src="https://unpkg.com/vue-numeric"></script>
<script>
Vue.use(VueNumeric.default)
</script>$ npm install vue-numeric --saveimport Vue from 'vue'
import VueNumeric from 'vue-numeric'
export default {
name: 'App',
components: {
VueNumeric
}
}import Vue from 'vue'
import VueNumeric from 'vue-numeric'
Vue.use(VueNumeric)<template>
<vue-numeric currency="$" separator="," v-model="price"></vue-numeric>
</template>
<script>
import VueNumeric from 'vue-numeric'
export default {
name: 'App',
components: {
VueNumeric
},
data: () => ({
price: ''
}),
}
</script>Set the currency prop to add a currency symbol within the input.
<vue-numeric currency="$"></vue-numeric>Limit the minimum and maximum value by using min and max props.
mindefaults to0.minandmaxacceptStringorNumbervalues.
<vue-numeric v-bind:min="2000" v-bind:max="10000"></vue-numeric>minus defaults to false (no negative numbers).
<vue-numeric v-bind:minus="false"></vue-numeric>By default the decimal value is disabled. To use decimals in the value, add the precision prop.
precisionaccept aStringorNumbernumeric value.
<vue-numeric v-bind:precision="2"></vue-numeric>- Default thousand separator's symbol is
,. - Use the
separatorprop to change the thousands separator. separatoronly acceptsspace,,or..- When using the
.orspaceas thousand separator, the decimal separator will be,.
<vue-numeric separator="."></vue-numeric><vue-numeric placeholder="only number allowed"></vue-numeric>By default, when you clean the input the value is set to 0. You can change this value to fit your needs.
<vue-numeric :empty-value="1"></vue-numeric>| Props | Description | Required | Type | Default |
|---|---|---|---|---|
| currency | Currency prefix | false | String | - |
| currency-symbol-position | Position of the symbol (accepted values: prefix or suffix) |
false | String | prefix |
| max | Maximum value allowed | false | Number | 9007199254740991 |
| min | Minimum value allowed | false | Number | -9007199254740991 |
| minus | Enable/disable negative values | false | Boolean | false |
| placeholder | Input placeholder | false | String | - |
| empty-value | Value when input is empty | false | Number | 0 |
| precision | Number of decimals | false | Number | - |
| separator | Thousand separator symbol (accepts space, . or ,) |
false | String | , |
| decimal-separator | Custom decimal separator | false | String | - |
| thousand-separator | Custom thousand separator | false | String | - |
| read-only | Hide input field and show the value as text | false | Boolean | false |
| read-only-class | Class for read-only element | false | String | '' |
Vue-Numeric is open-sourced software licensed under the MIT license
