| | |
| | | <template> |
| | | <view class="oi-form-input-number"> |
| | | <input v-if="model" type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" v-model="model[data.fieldId]" :focus="focus" |
| | | :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm" @click="onClick" |
| | | :disabled="data.disabled"></input> |
| | | <input v-else type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" v-model="data.value" :focus="focus" |
| | | :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm" @click="onClick" |
| | | :disabled="data.disabled"></input> |
| | | <input v-if="model" type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" |
| | | v-model="model[data.fieldId]" :focus="focus" :placeholder="data.placeholder" @focus="onFocus" @blur="onChange" |
| | | @confirm="onConfirm" @click="onClick" :disabled="data.disabled"></input> |
| | | <input v-else type="number" class="oi-input-number" :class="data.disabled?'input-disabled':''" |
| | | v-model="data.value" :focus="focus" :placeholder="data.placeholder" @focus="onFocus" @blur="onChange" @confirm="onConfirm" |
| | | @click="onClick" :disabled="data.disabled"></input> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | }, |
| | | methods: { |
| | | onChange(e) { |
| | | this.$emit("change", e) |
| | | this.$emit("on-change", e) |
| | | }, |
| | | onConfirm(e) { |
| | | this.onChange(e) |
| | | }, |
| | | onClick(e) { |
| | | this.$emit("click", e) |
| | | this.$emit("on-click", e) |
| | | }, |
| | | |
| | | } |
| | | onFocus(e) { |
| | | this.$emit("on-focus", e) |
| | | }, |
| | | |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | .oi-form-input-number { |
| | | border: 1px solid #d5d5d5; |
| | | width: calc(100%- 6rpx); |
| | | border-radius: 6px !important; |
| | | padding: 3rpx; |
| | | width: 100%; |
| | | |
| | | .input-disabled { |
| | | background-color: #f3f3f3 !important; |
| | | } |
| | |
| | | transition-duration: 0.1s; |
| | | vertical-align: middle; |
| | | } |
| | | } |
| | | .oi-form-input-number:hover { |
| | | border: 1px solid rgb(41, 121, 255); |
| | | |
| | | .oi-input-number:hover { |
| | | border: 1px solid rgb(41, 121, 255); |
| | | } |
| | | } |
| | | </style> |