Skip to content

Latest commit

 

History

History
71 lines (63 loc) · 2.31 KB

代码提醒.md

File metadata and controls

71 lines (63 loc) · 2.31 KB

加rules有两种方式

el-from上加 :rules="View.rules" 在想校验的字段上加prop

    <el-col :span="7">
        <el-form-item label="生单时间终点" prop="createTimeTo">
            <el-date-picker
                class="form-search-long-Item"
                size="small"
                v-model="View.searchItems.createTimeTo"
                type="date"
                :editable="false"
                format="yyyy-MM-dd"
                placeholder="生单时间终点"
                @change="date => View.searchItems.createTimeTo = new Date(date).getTime()"
            ></el-date-picker>
        </el-form-item>
    </el-col>
data() {
	// 生单开始时间不能大于结束时间
	const checkCreateTime = (rule, value, callback) => {
	    if (this.View.searchItems.createTimeFrom > this.View.searchItems.createTimeTo) {
	        return callback(new Error(rule.message));
	    } else {
	        callback();
	    }
	};

	// 生单开始时间不能小于结束时间 + 31天
	const checkCreateTime2 = (rule, value, callback) => {
	    const oneDayTime = 24 * 60 * 60 * 1000; // 一天的毫秒数
	    if (this.View.searchItems.createTimeFrom + oneDayTime * 31 < this.View.searchItems.createTimeTo) {
	        return callback(new Error(rule.message));
	    } else {
	        callback();
	    }
	};

   	const viewItem = {

        searchItems: {
            asnCode: '', // 退仓单号
            asnType: '', // 退仓类型
            poNo: '', // 箱号
            status: [100, 200], // 原先
            createTimeFrom: startDate, // 生单时间起点
            createTimeTo: endDate, // 生单时间终点
        },
        rules: {
            createTimeFrom: [
                { required: true, message: '请输入生单时间起点' },
                { validator: checkCreateTime, message: '生单开始时间不能大于结束时间' },
                { validator: checkCreateTime2, message: '生单开始结束时间相差最多31天' }
            ],
            createTimeTo: [
                { required: true, message: '请输入生单时间终点' },
                { validator: checkCreateTime, message: '生单开始时间不能大于结束时间' },
                { validator: checkCreateTime2, message: '生单开始结束时间相差最多31天' }
            ]
        },
    };
}