diff --git a/CHANGELOG.en-US.md b/CHANGELOG.en-US.md
index 6fc97f3e8..fa1b9f186 100644
--- a/CHANGELOG.en-US.md
+++ b/CHANGELOG.en-US.md
@@ -177,6 +177,14 @@ in `lazy` mode #6235
##
* Dynamically rendering arbitrary HTML on your website can be very dangerous because it can easily lead to [XSS attacks](https://en.wikipedia.org/wiki/Cross-site_scripting). So when `dangerouslyUseHTMLString` is on, please make sure the content of `message` is trusted, and **never** assign `message` to user-provided content.
+### 1.4.7
+
+*2017-10-16*
+
+- Fixed compatibility of Autocomplete and Vue 2.5.x, #6942 (by @rennai)
+- Added `allow-focus` attribute for Switch, #7494 (by @breadadams)
+
+
### 1.4.6
*2017-09-27*
diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md
index e95e8aee2..da93001af 100644
--- a/CHANGELOG.zh-CN.md
+++ b/CHANGELOG.zh-CN.md
@@ -172,6 +172,12 @@
##
* 在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 [XSS 攻击](https://en.wikipedia.org/wiki/Cross-site_scripting)。因此请在 `dangerouslyUseHTMLString` 打开的情况下,确保 `message` 的内容是可信的,**永远不要**将用户提交的内容赋值给 `message` 属性。
+### 1.4.7
+*2017-10-16*
+
+- 修复 Autocomplete 与 Vue 2.5.x 不兼容的问题,#6942(by @rennai)
+- Switch 新增 `allow-focus` 属性,#7494(by @breadadams)
+
### 1.4.6
*2017-09-27*
diff --git a/examples/versions.json b/examples/versions.json
index 41012d34a..0e991ab57 100644
--- a/examples/versions.json
+++ b/examples/versions.json
@@ -1 +1 @@
-{"1.0.9":"1.0","1.1.6":"1.1","1.2.9":"1.2","1.3.7":"1.3","1.4.6":"1.4","2.0.0-alpha.3":"2.0"}
\ No newline at end of file
+{"1.0.9":"1.0","1.1.6":"1.1","1.2.9":"1.2","1.3.7":"1.3","1.4.7":"1.4","2.0.0-alpha.3":"2.0"}
\ No newline at end of file
diff --git a/packages/form/src/form-item.vue b/packages/form/src/form-item.vue
index 2774da462..305da6d49 100644
--- a/packages/form/src/form-item.vue
+++ b/packages/form/src/form-item.vue
@@ -184,7 +184,7 @@
methods: {
validate(trigger, callback = noop) {
var rules = this.getFilteredRule(trigger);
- if (!rules || rules.length === 0) {
+ if ((!rules || rules.length === 0) && !this._props.hasOwnProperty('required')) {
callback();
return true;
}
@@ -230,10 +230,11 @@
getRules() {
var formRules = this.form.rules;
var selfRules = this.rules;
+ var requiredRule = this._props.hasOwnProperty('required') ? { required: !!this.required } : [];
formRules = formRules ? formRules[this.prop] : [];
- return [].concat(selfRules || formRules || []);
+ return [].concat(selfRules || formRules || []).concat(requiredRule);
},
getFilteredRule(trigger) {
var rules = this.getRules();
@@ -268,7 +269,7 @@
let rules = this.getRules();
- if (rules.length) {
+ if (rules.length || this._props.hasOwnProperty('required')) {
this.$on('el.form.blur', this.onFieldBlur);
this.$on('el.form.change', this.onFieldChange);
}
diff --git a/packages/table/src/table-header.js b/packages/table/src/table-header.js
index 7d2afe38b..a3b3e4d45 100644
--- a/packages/table/src/table-header.js
+++ b/packages/table/src/table-header.js
@@ -380,9 +380,15 @@ export default {
const bodyStyle = document.body.style;
if (rect.width > 12 && rect.right - event.pageX < 8) {
bodyStyle.cursor = 'col-resize';
+ if (hasClass(target, 'is-sortable')) {
+ target.style.cursor = 'col-resize';
+ }
this.draggingColumn = column;
} else if (!this.dragging) {
bodyStyle.cursor = '';
+ if (hasClass(target, 'is-sortable')) {
+ target.style.cursor = 'pointer';
+ }
this.draggingColumn = null;
}
}
diff --git a/packages/theme-default/package.json b/packages/theme-default/package.json
new file mode 100644
index 000000000..e69de29bb