File tree Expand file tree Collapse file tree 5 files changed +41
-5
lines changed
docs/src/pages/components Expand file tree Collapse file tree 5 files changed +41
-5
lines changed Original file line number Diff line number Diff line change 28
28
<md-table-cell ><code >Boolean</code ></md-table-cell >
29
29
<md-table-cell >Enable delete button. Default: <code >false</code ></md-table-cell >
30
30
</md-table-row >
31
+
32
+ <md-table-row >
33
+ <md-table-cell >md-editable</md-table-cell >
34
+ <md-table-cell ><code >Boolean</code ></md-table-cell >
35
+ <md-table-cell >Enable click on the chip's content. Default: <code >false</code ></md-table-cell >
36
+ </md-table-row >
31
37
</md-table-body >
32
38
</md-table >
33
39
46
52
<md-table-cell >None</md-table-cell >
47
53
<md-table-cell >Triggered when delete button is clicked.</md-table-cell >
48
54
</md-table-row >
55
+ <md-table-row >
56
+ <md-table-cell >edit</md-table-cell >
57
+ <md-table-cell >None</md-table-cell >
58
+ <md-table-cell >Triggered when the chip's content is clicked.</md-table-cell >
59
+ </md-table-row >
49
60
</md-table-body >
50
61
</md-table >
51
62
</api-table >
136
147
<div slot =" demo" >
137
148
<md-chip >Marcos Moura</md-chip >
138
149
<md-chip md-deletable >Luiza Ivanenko</md-chip >
150
+ <md-chip md-editable >Alban Mouton</md-chip >
139
151
</div >
140
152
141
153
<div slot =" code" >
142
154
<code-block lang =" xml" >
143
155
< ; md-chip> ; Marcos Moura< ; /md-chip> ;
144
156
< ; md-chip md-deletable> ; Luiza Ivanenko< ; /md-chip> ;
157
+ < ; md-chip md-editable> ; Alban Mouton< ; /md-chip> ;
145
158
</code-block >
146
159
</div >
147
160
</example-box >
Original file line number Diff line number Diff line change 1
1
<template >
2
2
<div class =" md-chip" :class =" [themeClass, classes]" tabindex =" 0" >
3
- <slot ></slot >
3
+ <div class =" md-chip-container" @click =" !disabled && mdEditable && $emit('edit')" >
4
+ <slot ></slot >
5
+ </div >
4
6
5
7
<md-button
6
8
class =" md-icon-button md-dense md-delete"
20
22
name: ' md-chip' ,
21
23
props: {
22
24
disabled: Boolean ,
23
- mdDeletable: Boolean
25
+ mdDeletable: Boolean ,
26
+ mdEditable: Boolean
24
27
},
25
28
mixins: [theme],
26
29
computed: {
27
30
classes () {
28
31
return {
29
32
' md-deletable' : this .mdDeletable ,
30
- ' md-disabled' : this .disabled
33
+ ' md-disabled' : this .disabled ,
34
+ ' md-editable' : this .mdEditable
31
35
};
32
36
}
33
37
}
Original file line number Diff line number Diff line change @@ -19,6 +19,12 @@ $chip-icon-font: $chip-icon-size - 4px;
19
19
padding-right : 32px ;
20
20
}
21
21
22
+ & .md-editable {
23
+ .md-chip-container {
24
+ cursor : pointer ;
25
+ }
26
+ }
27
+
22
28
& :focus ,
23
29
& :active {
24
30
outline : none ;
Original file line number Diff line number Diff line change 2
2
&.md-chip {
3
3
background-color: #{'BACKGROUND-CONTRAST-0.12'};
4
4
5
- &.md-deletable {
5
+ &.md-deletable, &.md-editable {
6
6
&:hover,
7
7
&:focus {
8
8
background-color: #{'BACKGROUND-CONTRAST-0.54'};
Original file line number Diff line number Diff line change 4
4
<md-chip
5
5
v-for =" chip in selectedChips"
6
6
:md-deletable =" !mdStatic"
7
+ :md-editable =" !mdStatic"
7
8
:disabled =" disabled"
8
- @delete =" deleteChip(chip)" >
9
+ @delete =" deleteChip(chip)"
10
+ @edit =" editChip(chip)" >
9
11
<slot :value =" chip" ></slot >
10
12
</md-chip >
11
13
100
102
this .$emit (' change' , this .selectedChips );
101
103
this .applyInputFocus ();
102
104
},
105
+ editChip (chip ) {
106
+ let index = this .selectedChips .indexOf (chip);
107
+
108
+ if (index >= 0 ) {
109
+ this .selectedChips .splice (index, 1 );
110
+ }
111
+
112
+ this .currentChip = chip;
113
+ this .$emit (' change' , this .selectedChips );
114
+ this .applyInputFocus ();
115
+ },
103
116
deleteLastChip () {
104
117
if (! this .currentChip ) {
105
118
this .selectedChips .pop ();
You can’t perform that action at this time.
0 commit comments