parent
							
								
									23cf2fab0b
								
							
						
					
					
						commit
						088b36aec1
					
				
				 1 changed files with 66 additions and 0 deletions
			
			
		@ -0,0 +1,66 @@ | 
				
			|||||||
 | 
					<template> | 
				
			||||||
 | 
					  <a-input | 
				
			||||||
 | 
					    :addon-after="addonAfter" | 
				
			||||||
 | 
					    :addon-before="addonBefore" | 
				
			||||||
 | 
					    :default-value="defaultValue" | 
				
			||||||
 | 
					    :disabled="disabled" | 
				
			||||||
 | 
					    :id="id" | 
				
			||||||
 | 
					    :max-length="maxLength" | 
				
			||||||
 | 
					    :prefix="prefix" | 
				
			||||||
 | 
					    :size="size" | 
				
			||||||
 | 
					    :suffix="suffix || lenSuffix" | 
				
			||||||
 | 
					    :type="type" | 
				
			||||||
 | 
					    :allow-clear="allowClear" | 
				
			||||||
 | 
					    v-model="sValue" | 
				
			||||||
 | 
					    :value="value" | 
				
			||||||
 | 
					    @change="onChange" | 
				
			||||||
 | 
					    @input="onInput" | 
				
			||||||
 | 
					    @pressEnter="onPressEnter" | 
				
			||||||
 | 
					    @keydown="onKeydown" | 
				
			||||||
 | 
					  > | 
				
			||||||
 | 
					    <template :slot="slot" v-for="slot in Object.keys($slots)"> | 
				
			||||||
 | 
					      <slot :name="slot"></slot> | 
				
			||||||
 | 
					    </template> | 
				
			||||||
 | 
					  </a-input> | 
				
			||||||
 | 
					</template> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<script> | 
				
			||||||
 | 
					  export default { | 
				
			||||||
 | 
					    name: 'IInput', | 
				
			||||||
 | 
					    model: { | 
				
			||||||
 | 
					      prop: 'value', | 
				
			||||||
 | 
					      event: 'change.value' | 
				
			||||||
 | 
					    }, | 
				
			||||||
 | 
					    props: ['addonAfter', 'addonBefore', 'defaultValue', 'disabled', 'id', 'maxLength', 'prefix', 'size', 'suffix', 'type', 'value', 'allowClear'], | 
				
			||||||
 | 
					    data() { | 
				
			||||||
 | 
					      return { | 
				
			||||||
 | 
					        sValue: this.value || this.defaultValue || '' | 
				
			||||||
 | 
					      } | 
				
			||||||
 | 
					    }, | 
				
			||||||
 | 
					    watch: { | 
				
			||||||
 | 
					      value(val) { | 
				
			||||||
 | 
					        this.sValue = val | 
				
			||||||
 | 
					      } | 
				
			||||||
 | 
					    }, | 
				
			||||||
 | 
					    computed: { | 
				
			||||||
 | 
					      lenSuffix() { | 
				
			||||||
 | 
					        return this.maxLength && `${(this.sValue + '').length}/${this.maxLength}` | 
				
			||||||
 | 
					      } | 
				
			||||||
 | 
					    }, | 
				
			||||||
 | 
					    methods: { | 
				
			||||||
 | 
					      onChange(e) { | 
				
			||||||
 | 
					        this.$emit('change', e) | 
				
			||||||
 | 
					        this.$emit('change.value', e.target.value) | 
				
			||||||
 | 
					      }, | 
				
			||||||
 | 
					      onInput(e) { | 
				
			||||||
 | 
					        this.$emit('input', e) | 
				
			||||||
 | 
					      }, | 
				
			||||||
 | 
					      onPressEnter(e) { | 
				
			||||||
 | 
					        this.$emit('pressEnter', e) | 
				
			||||||
 | 
					      }, | 
				
			||||||
 | 
					      onKeydown(e) { | 
				
			||||||
 | 
					        this.$emit('keydown', e) | 
				
			||||||
 | 
					      } | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					  } | 
				
			||||||
 | 
					</script> | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue