mirror of
https://github.com/Hopiu/vue-material.git
synced 2026-03-16 22:10:27 +00:00
md-error possibility and remove required chip-template within md-chips
This commit is contained in:
parent
bec42aa4d0
commit
f2baf69a0f
3 changed files with 61 additions and 20 deletions
|
|
@ -161,16 +161,12 @@
|
|||
|
||||
<example-box card-title="Static">
|
||||
<div slot="demo">
|
||||
<md-chips v-model="fruits" md-static>
|
||||
<template scope="chip">{{ chip.value }}</template>
|
||||
</md-chips>
|
||||
<md-chips v-model="fruits" md-static></md-chips>
|
||||
</div>
|
||||
|
||||
<div slot="code">
|
||||
<code-block lang="xml">
|
||||
<md-chips v-model="fruits" md-static>
|
||||
<template scope="chip">{{ '{{ chip.value }\}' }}</template>
|
||||
</md-chips>
|
||||
<md-chips v-model="fruits" md-static></md-chips>
|
||||
</code-block>
|
||||
|
||||
<code-block lang="javascript">
|
||||
|
|
@ -185,15 +181,35 @@
|
|||
|
||||
<example-box card-title="Editable">
|
||||
<div slot="demo">
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact">
|
||||
<template scope="chip">{{ chip.value }}</template>
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact"></md-chips>
|
||||
</div>
|
||||
|
||||
<div slot="code">
|
||||
<code-block lang="xml">
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact"></md-chips>
|
||||
</code-block>
|
||||
|
||||
<code-block lang="javascript">
|
||||
export default {
|
||||
data: () => ({
|
||||
contacts: ['Marcos Moura'],
|
||||
})
|
||||
};
|
||||
</code-block>
|
||||
</div>
|
||||
</example-box>
|
||||
|
||||
<example-box card-title="Errors">
|
||||
<div slot="demo">
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact" class="md-input-invalid">
|
||||
<span class="md-error">Validation message</span>
|
||||
</md-chips>
|
||||
</div>
|
||||
|
||||
<div slot="code">
|
||||
<code-block lang="xml">
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact">
|
||||
<template scope="chip">{{ '{{ chip.value }\}' }}</template>
|
||||
<md-chips v-model="contacts" md-input-placeholder="Add a contact" class="md-input-invalid">
|
||||
<span class="md-error">Validation message</span>
|
||||
</md-chips>
|
||||
</code-block>
|
||||
|
||||
|
|
@ -207,10 +223,10 @@
|
|||
</div>
|
||||
</example-box>
|
||||
|
||||
<example-box card-title="Limit">
|
||||
<example-box card-title="Custom chip and Limit">
|
||||
<div slot="demo">
|
||||
<md-chips v-model="cities" :md-max="5" md-input-placeholder="Cities...">
|
||||
<template scope="chip">
|
||||
<template scope="chip" slot="chip">
|
||||
<span>{{ chip.value }}</span>
|
||||
<small v-if="chip.value === 'Amsterdam'">(favorite)</small>
|
||||
</template>
|
||||
|
|
@ -220,7 +236,7 @@
|
|||
<div slot="code">
|
||||
<code-block lang="xml">
|
||||
<md-chips v-model="cities" :md-max="5" md-input-placeholder="Cities...">
|
||||
<template scope="chip">
|
||||
<template scope="chip" slot="chip">
|
||||
<span>{{ '{{ chip.value }\}' }}</span>
|
||||
<small v-if="chip.value === 'Amsterdam'">(favorite)</small>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -75,17 +75,15 @@ $chip-icon-font: $chip-icon-size - 4px;
|
|||
}
|
||||
|
||||
.md-chips {
|
||||
min-height: 54px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.md-chip {
|
||||
margin-right: 8px;
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.md-input-container {
|
||||
min-height: 54px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.md-input {
|
||||
width: 128px;
|
||||
flex: 1;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,30 @@
|
|||
<template>
|
||||
<md-input-container :class="[themeClass, classes]" @click.native="applyInputFocus">
|
||||
<md-chip
|
||||
v-for="chip in selectedChips"
|
||||
:md-deletable="!mdStatic"
|
||||
:disabled="disabled"
|
||||
@delete="deleteChip(chip)">
|
||||
<slot name="chip" :value="chip">{{ chip }}</slot>
|
||||
</md-chip>
|
||||
|
||||
<md-input
|
||||
v-show="!mdStatic"
|
||||
v-model="currentChip"
|
||||
:type="mdInputType"
|
||||
:placeholder="mdInputPlaceholder"
|
||||
:id="inputId"
|
||||
:name="mdInputName"
|
||||
:disabled="disabled"
|
||||
@keydown.native.delete="deleteLastChip"
|
||||
@keydown.native.prevent.enter="addChip"
|
||||
@keydown.native.prevent.186="addChip"
|
||||
tabindex="0"
|
||||
ref="input">
|
||||
</md-input>
|
||||
|
||||
<slot></slot>
|
||||
</md-input-container>
|
||||
<div class="md-chips" :class="[themeClass, classes]">
|
||||
<md-input-container @click.native="applyInputFocus">
|
||||
<md-chip
|
||||
|
|
@ -69,7 +95,8 @@
|
|||
classes() {
|
||||
return {
|
||||
'md-static': this.mdStatic,
|
||||
'md-disabled': this.disabled
|
||||
'md-disabled': this.disabled,
|
||||
'md-chips': true
|
||||
};
|
||||
}
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue