Blame view

src/components/cell/cell.vue 2.7 KB
59a3b893   梁灏   add Cell componen...
1
  <template>
4258a559   梁灏   update
2
      <div :class="classes">
9c529885   梁灏   Cell component ad...
3
          <a v-if="to" :href="linkUrl" class="ivu-cell-link" @click.prevent="handleClick" @click="handleClickItem">
da76a284   梁灏   update Cell
4
5
              <CellItem :title="title" :label="label" :extra="extra">
                  <slot name="icon" slot="icon"></slot>
4258a559   梁灏   update
6
                  <slot slot="default"></slot>
da76a284   梁灏   update Cell
7
                  <slot name="extra" slot="extra"></slot>
4258a559   梁灏   update
8
                  <slot name="label" slot="label"></slot>
da76a284   梁灏   update Cell
9
10
              </CellItem>
          </a>
9c529885   梁灏   Cell component ad...
11
          <div class="ivu-cell-link" v-else @click="handleClickItem">
da76a284   梁灏   update Cell
12
13
              <CellItem :title="title" :label="label" :extra="extra">
                  <slot name="icon" slot="icon"></slot>
4258a559   梁灏   update
14
                  <slot slot="default"></slot>
da76a284   梁灏   update Cell
15
                  <slot name="extra" slot="extra"></slot>
4258a559   梁灏   update
16
                  <slot name="label" slot="label"></slot>
da76a284   梁灏   update Cell
17
18
19
20
21
22
23
24
              </CellItem>
          </div>
          <div class="ivu-cell-arrow" v-if="to">
              <slot name="arrow">
                  <Icon type="ios-arrow-right"></Icon>
              </slot>
          </div>
      </div>
59a3b893   梁灏   add Cell componen...
25
26
  </template>
  <script>
da76a284   梁灏   update Cell
27
28
      import CellItem from './cell-item.vue';
      import Icon from '../icon/icon.vue';
e77474de   梁灏   update
29
      import mixinsLink from '../../mixins/link';
da76a284   梁灏   update Cell
30
31
32
  
      const prefixCls = 'ivu-cell';
  
59a3b893   梁灏   add Cell componen...
33
      export default {
da76a284   梁灏   update Cell
34
          name: 'Cell',
9c529885   梁灏   Cell component ad...
35
          inject: ['cellGroup'],
e77474de   梁灏   update
36
          mixins: [ mixinsLink ],
da76a284   梁灏   update Cell
37
          components: { CellItem, Icon },
59a3b893   梁灏   add Cell componen...
38
          props: {
da76a284   梁灏   update Cell
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
              name: {
                  type: [String, Number]
              },
              title: {
                  type: String,
                  default: ''
              },
              label: {
                  type: String,
                  default: ''
              },
              extra: {
                  type: String,
                  default: ''
              },
              disabled: {
                  type: Boolean,
                  default: false
              },
              selected: {
                  type: Boolean,
                  default: false
              },
              to: {
                  type: [Object, String]
              },
              replace: {
                  type: Boolean,
                  default: false
              }
59a3b893   梁灏   add Cell componen...
69
          },
da76a284   梁灏   update Cell
70
71
72
          data () {
              return {
                  prefixCls: prefixCls
77376451   梁灏   fixed #3568
73
              };
da76a284   梁灏   update Cell
74
75
76
77
78
79
80
81
82
83
84
          },
          computed: {
              classes () {
                  return [
                      `${prefixCls}`,
                      {
                          [`${prefixCls}-disabled`]: this.disabled,
                          [`${prefixCls}-selected`]: this.selected,
                          [`${prefixCls}-with-link`]: this.to
                      }
                  ];
e77474de   梁灏   update
85
              },
da76a284   梁灏   update Cell
86
          },
9c529885   梁灏   Cell component ad...
87
88
89
90
91
          methods: {
              handleClickItem () {
                  this.cellGroup.handleClick(this.name);
              }
          }
77376451   梁灏   fixed #3568
92
      };
59a3b893   梁灏   add Cell componen...
93
  </script>