diff --git a/examples/docs/en-US/cascader.md b/examples/docs/en-US/cascader.md index f30ecbf88..0ccb07199 100644 --- a/examples/docs/en-US/cascader.md +++ b/examples/docs/en-US/cascader.md @@ -302,7 +302,6 @@ There are two ways to expand child option items. expand-trigger="hover" :options="options" v-model="selectedOptions2" - clearable @change="handleChange"> diff --git a/examples/docs/en-US/form.md b/examples/docs/en-US/form.md index 2b5465332..992773e33 100644 --- a/examples/docs/en-US/form.md +++ b/examples/docs/en-US/form.md @@ -770,6 +770,7 @@ When an `el-form-item` is nested in another `el-form-item`, its label width will | rules | validation rules of form | object | — | — | | error | field error message, set its value and the field will validate error and show this message immediately | string | — | — | | show-message | whether to show the error message | boolean | — | true | +| inline-message | inline style validate message | boolean | — | false | ### Form-Item Slot diff --git a/examples/docs/zh-CN/form.md b/examples/docs/zh-CN/form.md index 6dd882fcc..680c87065 100644 --- a/examples/docs/zh-CN/form.md +++ b/examples/docs/zh-CN/form.md @@ -393,7 +393,7 @@ ::: demo Form 组件提供了表单验证的功能,只需要通过 `rule` 属性传入约定的验证规则,并 Form-Item 的 `prop` 属性设置为需校验的字段名即可。校验规则参见 [async-validator](https://github.com/yiminghe/async-validator) ```html - + @@ -759,6 +759,7 @@ | rules | 表单验证规则 | object | — | — | | error | 表单域验证错误信息, 设置该值会使表单验证状态变为`error`,并显示该错误信息 | string | — | — | | show-message | 是否显示校验错误信息 | boolean | — | true | +| inline-message | 以行内形式展示校验信息 | boolean | — | false | ### Form-Item Slot | name | 说明 | diff --git a/packages/form/src/form-item.vue b/packages/form/src/form-item.vue index 056c6702c..5007091cb 100644 --- a/packages/form/src/form-item.vue +++ b/packages/form/src/form-item.vue @@ -12,7 +12,13 @@
-
{{validateMessage}}
+
+ {{validateMessage}} +
@@ -55,10 +61,12 @@ provide() { return { - formItem: this + elFormItem: this }; }, + inject: ['elForm'], + props: { label: String, labelWidth: String, @@ -68,6 +76,7 @@ rules: [Object, Array], error: String, validateStatus: String, + inlineMessage: Boolean, showMessage: { type: Boolean, default: true diff --git a/packages/form/src/form.vue b/packages/form/src/form.vue index ab255a778..18bee5754 100644 --- a/packages/form/src/form.vue +++ b/packages/form/src/form.vue @@ -12,6 +12,12 @@ componentName: 'ElForm', + provide() { + return { + elForm: this + }; + }, + props: { model: Object, rules: Object, diff --git a/packages/input/src/input.vue b/packages/input/src/input.vue index c0488c3c9..43217e29d 100644 --- a/packages/input/src/input.vue +++ b/packages/input/src/input.vue @@ -80,7 +80,7 @@ mixins: [emitter, Focus('input')], - inject: ['formItem'], + inject: ['elFormItem'], data() { return { diff --git a/packages/theme-chalk/src/form.scss b/packages/theme-chalk/src/form.scss index fc290c8b2..e13313992 100644 --- a/packages/theme-chalk/src/form.scss +++ b/packages/theme-chalk/src/form.scss @@ -71,6 +71,14 @@ position: absolute; top: 100%; left: 0; + + @include m(inline) { + position: relative; + top: auto; + left: auto; + display: inline-block; + margin-left: 10px; + } } @include when(required) { diff --git a/packages/theme-chalk/src/input.scss b/packages/theme-chalk/src/input.scss index 28ae4d9f4..3c22119e5 100644 --- a/packages/theme-chalk/src/input.scss +++ b/packages/theme-chalk/src/input.scss @@ -66,7 +66,6 @@ height: 100%; width: 25px; text-align: center; - // color: $--input-icon-color; transition: all .3s; &:after { diff --git a/packages/theme-chalk/src/select.scss b/packages/theme-chalk/src/select.scss index c305d8ad0..e8563909a 100644 --- a/packages/theme-chalk/src/select.scss +++ b/packages/theme-chalk/src/select.scss @@ -41,10 +41,7 @@ @include when(show-close) { transition: 0s; - // height: 16px; - // width: 16px; font-size: $--select-font-size; - // right: 8px; text-align: center; transform: rotateZ(180deg); border-radius: $--border-radius-circle; diff --git a/packages/theme-default/src/cascader.css b/packages/theme-default/src/cascader.css index 2910e1b52..615d0bd14 100644 --- a/packages/theme-default/src/cascader.css +++ b/packages/theme-default/src/cascader.css @@ -34,11 +34,6 @@ z-index: 2; } - @e clearIcon { - z-index: 2; - position: relative; - } - @e label { position: absolute; left: 0; diff --git a/test/unit/index.js b/test/unit/index.js index 62f9ca1fd..c1157e780 100644 --- a/test/unit/index.js +++ b/test/unit/index.js @@ -4,7 +4,7 @@ Function.prototype.bind = require('function-bind'); require('packages/theme-default/src/index.css'); // require all test files (files that ends with .spec.js) -const testsContext = require.context('./specs', true, /cascader\.spec$/); +const testsContext = require.context('./specs', true, /\.spec$/); testsContext.keys().forEach(testsContext); // require all src files except main.js for coverage.