form.vue 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <template>
  2. <el-dialog :title="titleMap[mode]" v-model="visible" :width="600" destroy-on-close @closed="$emit('closed')" :close-on-click-modal="false" :close-on-press-escape="false">
  3. <el-form ref="dialogForm" :model="formData" :rules="rules" label-width="100px" label-position="top">
  4. <el-form-item label="短信内容">
  5. <el-input v-model="sms" type="textarea" disabled readonly clearable placeholder="门店名称" rows="5"></el-input>
  6. <div class="el-form-item-msg" style="margin-top: 10px;">
  7. <el-button v-copy="sms">复制</el-button>
  8. </div>
  9. </el-form-item>
  10. </el-form>
  11. <template #footer>
  12. <el-button @click="visible=false" >关 闭</el-button>
  13. </template>
  14. </el-dialog>
  15. </template>
  16. <script>
  17. export default {
  18. data(){
  19. return {
  20. loading: false,
  21. mode:"add",
  22. titleMap:{
  23. add:"查看短信",
  24. edit:"查看短信"
  25. },
  26. visible: false,
  27. isSaveing: false,
  28. formData:{},
  29. submitState:false,
  30. disabled:false,
  31. rules:{},
  32. sms:""
  33. }
  34. },
  35. methods:{
  36. open(mode = 'add'){
  37. this.mode = mode;
  38. this.visible = true;
  39. return this
  40. },
  41. //表单注入数据
  42. setData(data){
  43. this.formData = data;
  44. this.getSms();
  45. },
  46. async getSms(){
  47. var resp = await this.$API.merOrderlife.sms.get({id:this.formData.id});
  48. if (resp.code == 0) {
  49. return this.$message.error(resp.msg);
  50. }
  51. this.sms = resp.data.sms;
  52. }
  53. }
  54. }
  55. </script>
  56. <style>
  57. .mt20 {margin-top: 20px;}
  58. .login-msg-yzm {display: flex;width: 100%;}
  59. .login-msg-yzm .el-button {margin-left: 10px;--el-button-size:42px;}
  60. </style>