WebApp【公共组件库】@前端(For Git Submodule)
Tevin
2024-03-06 f81a7a619725aa57c48353fca2c21a43fc3b7aee
forms/numberValve/CNumberValve.vue
@@ -16,7 +16,7 @@
                :required="itemRes.required"
                :disabled="itemRes.disabled"
                :error="itemRes.error"
                :value="itemRes.formData[itemRes.name] + unit"
                :value="valueStr"
                :placeholder="placeholder"
            >
                <view class="at-icon at-icon-chevron-right"></view>
@@ -49,7 +49,16 @@
                            @touchstart="evt => handleTouchStart()"
                            @touchmove="evt => handleTouchMove(evt)"
                        ></view>
                        <view class="current"><text class="text">{{current}}</text></view>
                        <view class="current">
                            <text
                                class="text m-text-ignore"
                                v-if="current===''"
                            >(请拖动)</text>
                            <text
                                class="text"
                                v-else
                            >{{current}}</text>
                        </view>
                    </view>
                </view>
                <view class="btn">
@@ -106,11 +115,22 @@
        return {
            opened: false,
            rect: { width: 0, left: 0 },
            current: 0,
            current: '',
            sliderLeft: 0,
        };
    },
    computed: {},
    computed: {
        valueStr() {
            if (
                this.itemRes.formData[this.itemRes.name] ||
                this.itemRes.formData[this.itemRes.name] === 0
            ) {
                return this.itemRes.formData[this.itemRes.name] + ' ' + this.unit;
            } else {
                return '';
            }
        },
    },
    methods: {
        handleOpen() {
            this.opened = true;
@@ -152,16 +172,18 @@
            let $slider = null;
            if (process.env.TARO_ENV === 'h5') {
                $slider = $(this.$refs.slider.$el);
                const rect = $slider[0].getBoundingClientRect();
                this.rect.width = rect.width;
                this.rect.left = rect.left;
            } else if (process.env.TARO_ENV === 'weapp') {
                $slider = $(this.$refs.slider);
                Taro.createSelectorQuery()
                    .select('#' + this.$refs.slider.uid)
                    .boundingClientRect(rect => {
                        this.rect.width = rect.width;
                        this.rect.left = rect.left;
                    })
                    .exec();
            }
            Taro.createSelectorQuery()
                .select('#' + this.$refs.slider.uid)
                .boundingClientRect(rect => {
                    this.rect.width = rect.width;
                    this.rect.left = rect.left;
                })
                .exec();
        },
        handleChangeVal(type, value) {
            this.updateRect();