Blame view

src/components/dialog/index.js 1.27 KB
c571d9ec   梁灏   add a dialog to f...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
  import Modal from './confirm';
  
  let modalInstance;
  
  function getModalInstance () {
      modalInstance = modalInstance || Modal.newInstance({
          closable: false,
          maskClosable: false,
          footerHide: true
      });
  
      return modalInstance;
  }
  
  function confirm (options) {
      let instance  = getModalInstance();
  
      options.onRemove = function () {
          modalInstance = null;
      };
  
      instance.show(options);
  }
  
  export default {
      info (props = {}) {
          props.icon = 'info';
          props.showCancel = false;
          return confirm(props);
      },
      success (props = {}) {
          props.icon = 'success';
          props.showCancel = false;
          return confirm(props);
      },
      warning (props = {}) {
          props.icon = 'warning';
          props.showCancel = false;
          return confirm(props);
      },
      error (props = {}) {
          props.icon = 'error';
          props.showCancel = false;
          return confirm(props);
      },
      confirm (props = {}) {
          props.icon = 'confirm';
          props.showCancel = true;
          return confirm(props);
      },
      remove () {
          if (!modalInstance) {   // at loading status, remove after Cancel
              return false;
          }
  
          const instance = getModalInstance();
  
          instance.remove();
      }
  }