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 @@
-
+
@@ -10,7 +10,7 @@
{{ v }}
-
+
{{ t }}
@@ -116,6 +116,12 @@
},
change (val) {
console.log(val)
+ },
+ focus () {
+ this.$Message.info('focus');
+ },
+ blur () {
+ this.$Message.info('blur');
}
}
}
--
libgit2 0.21.4