// +---------------------------------------------------------------------- // | CRMEB [ CRMEB赋能开发者,助力企业发展 ] // +---------------------------------------------------------------------- // | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved. // +---------------------------------------------------------------------- // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 // +---------------------------------------------------------------------- // | Author: CRMEB Team // +---------------------------------------------------------------------- /** * $prompt一行内容input提交封装 * @param inputType input type 类型 * @param title 标题 * @param val 回显的值 * @returns {Promise} */ export default function modalPrompt(inputType, title, val) { return new Promise((resolve, reject) => { this.$prompt(`${title}`, { confirmButtonText: '确定', cancelButtonText: '取消', inputErrorMessage: `请输入${title}`, inputType: inputType, inputValue: val ? val : '', showClose: false, closeOnClickModal: false, inputPlaceholder: `请输入${title}`, // inputValidator: (val) => { // if (val === null) { // return true; // } // return !(val.length > 11 || val.length < 11) // }, //inputErrorMessage: '格式不正确', inputValidator: (value) => { if (value === null) { return true; } if (!value) return '输入不能为空'; if (value.length > 50) return '输入限制50字以内'; }, beforeClose: (action, instance, done) => { if (action === 'confirm') { instance.confirmButtonLoading = true; instance.confirmButtonText = '执行中...'; setTimeout(() => { done(); setTimeout(() => { instance.confirmButtonLoading = false; }, 300); }, 3000); } else { done(); } }, }) .then(({ value }) => { resolve(value); // this.ruleForm.reason = value; // this.submit(); }) .catch(() => { this.$message.info('取消输入'); }); }); }