From 0a48ac45a4ce4ab67d2f0c2634a7f75a2111e8f4 Mon Sep 17 00:00:00 2001 From: 梁灏 Date: Tue, 15 Nov 2016 10:43:00 +0800 Subject: [PATCH] Input add readonly prop & focus、blur events --- src/components/cascader/cascader.vue | 21 +++++++++++++++++++++ src/components/cascader/index.js | 2 ++ src/components/input/input.vue | 20 ++++++++++++++++++-- src/index.js | 2 ++ test/app.vue | 1 + test/main.js | 5 +++++ test/routers/cascader.vue | 21 +++++++++++++++++++++ test/routers/input.vue | 10 ++++++++-- 8 files changed, 78 insertions(+), 4 deletions(-) create mode 100644 src/components/cascader/cascader.vue create mode 100644 src/components/cascader/index.js create mode 100644 test/routers/cascader.vue diff --git a/src/components/cascader/cascader.vue b/src/components/cascader/cascader.vue new file mode 100644 index 0000000..a0f797d --- /dev/null +++ b/src/components/cascader/cascader.vue @@ -0,0 +1,21 @@ + + \ No newline at end of file diff --git a/src/components/cascader/index.js b/src/components/cascader/index.js new file mode 100644 index 0000000..e314d89 --- /dev/null +++ b/src/components/cascader/index.js @@ -0,0 +1,2 @@ +import Cascader from './cascader.vue'; +export default Cascader; \ No newline at end of file diff --git a/src/components/input/input.vue b/src/components/input/input.vue index fec631e..f3f2f90 100644 --- a/src/components/input/input.vue +++ b/src/components/input/input.vue @@ -9,8 +9,11 @@ :placeholder="placeholder" :disabled="disabled" :maxlength="maxlength" + :readonly="readonly" v-model="value" - @keyup.enter="handleEnter"> + @keyup.enter="handleEnter" + @focus="handleFocus" + @blur="handleBlur">
@@ -70,6 +76,10 @@ rows: { type: Number, default: 2 + }, + readonly: { + type: Boolean, + default: false } }, data () { @@ -117,6 +127,12 @@ handleIconClick () { this.$emit('on-click'); }, + handleFocus () { + this.$emit('on-focus'); + }, + handleBlur () { + this.$emit('on-blur'); + }, resizeTextarea () { const autosize = this.autosize; if (!autosize || this.type !== 'textarea') { diff --git a/src/index.js b/src/index.js index a18555a..f46877b 100644 --- a/src/index.js +++ b/src/index.js @@ -5,6 +5,7 @@ import Badge from './components/badge'; import Breadcrumb from './components/breadcrumb'; import Button from './components/button'; import Card from './components/card'; +import Cascader from './components/cascader'; import Checkbox from './components/checkbox'; import Circle from './components/circle'; import Collapse from './components/collapse'; @@ -40,6 +41,7 @@ const iview = { iButton: Button, ButtonGroup: Button.Group, Card, + Cascader, Checkbox, CheckboxGroup: Checkbox.Group, Circle, diff --git a/test/app.vue b/test/app.vue index d685b66..5e5f2e5 100644 --- a/test/app.vue +++ b/test/app.vue @@ -41,6 +41,7 @@ li + li {
  • Alert
  • Tag
  • Input
  • +
  • Cascader
  • diff --git a/test/main.js b/test/main.js index d3473c6..db8f6d8 100644 --- a/test/main.js +++ b/test/main.js @@ -92,6 +92,11 @@ router.map({ component: function (resolve) { require(['./routers/tooltip.vue'], resolve); } + }, + '/cascader': { + component: function (resolve) { + require(['./routers/cascader.vue'], resolve); + } } }); diff --git a/test/routers/cascader.vue b/test/routers/cascader.vue new file mode 100644 index 0000000..a0f797d --- /dev/null +++ b/test/routers/cascader.vue @@ -0,0 +1,21 @@ + + \ No newline at end of file diff --git a/test/routers/input.vue b/test/routers/input.vue index 20a1a16..85e13ce 100644 --- a/test/routers/input.vue +++ b/test/routers/input.vue @@ -1,5 +1,5 @@