Skip to content

Commit ed26f09

Browse files
author
Andy
committed
Merge branch 'feat-vue3' of https://github.com/vueComponent/ant-design-vue into feat-vue3
2 parents 19055e3 + 75e1661 commit ed26f09

File tree

119 files changed

+1147
-1953
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+1147
-1953
lines changed

.babelrc

+10-6
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
{
22
"env": {
33
"test": {
4-
"presets": [["env", { "targets": { "node": "current" } }]],
4+
"presets": [["@babel/preset-env", { "targets": { "node": "current" } }]],
55
"plugins": [
6-
"transform-vue-jsx",
7-
"transform-object-assign",
8-
"transform-object-rest-spread",
9-
"transform-class-properties",
10-
"transform-runtime"
6+
"@ant-design-vue/babel-plugin-jsx",
7+
"babel-plugin-inline-import-data-uri",
8+
"@babel/plugin-transform-member-expression-literals",
9+
"@babel/plugin-transform-property-literals",
10+
"@babel/plugin-proposal-export-default-from",
11+
"@babel/plugin-transform-object-assign",
12+
"@babel/plugin-transform-template-literals",
13+
"@babel/plugin-proposal-object-rest-spread",
14+
"@babel/plugin-proposal-class-properties"
1115
]
1216
}
1317
}

.jest.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ module.exports = {
2121
'^@/(.*)$': '<rootDir>/$1',
2222
'ant-design-vue$': '<rootDir>/components/index.js',
2323
'ant-design-vue/es': '<rootDir>/components',
24-
'^vue$': 'vue/dist/vue.common.js',
24+
// '^vue$': 'vue/dist/vue.global.js',
2525
},
2626
snapshotSerializers: ['<rootDir>/node_modules/jest-serializer-vue'],
2727
collectCoverage: process.env.COVERAGE === 'true',

CHANGELOG.en-US.md

+7
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@
1010

1111
---
1212

13+
## 1.6.2
14+
15+
`2020-06-02`
16+
17+
- 🐞 Fix dialogClass type error [#2298](https://github.com/vueComponent/ant-design-vue/issues/2298)
18+
- 🐞 Fix RangePicker panel display error [#2318](https://github.com/vueComponent/ant-design-vue/issues/2318)
19+
1320
## 1.6.1
1421

1522
`2020-05-25`

CHANGELOG.zh-CN.md

+7
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@
1010

1111
---
1212

13+
## 1.6.2
14+
15+
`2020-06-02`
16+
17+
- 🐞 修复弹窗 dialogClass 类型错误 [#2298](https://github.com/vueComponent/ant-design-vue/issues/2298)
18+
- 🐞 修复 RangePicker 面板展示错误 [#2318](https://github.com/vueComponent/ant-design-vue/issues/2318)
19+
1320
## 1.6.1
1421

1522
`2020-05-25`

breakChange-2.x.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# break change
2+
3+
## Tag
4+
5+
### CheckableTag
6+
7+
v-model -> v-model:checked
8+
9+
### Tag
10+
11+
v-model -> v-model:visible
12+
13+
移除 afterClose 属性
14+
15+
## Radio
16+
17+
radioGroup radio v-model -> v-model:value
18+
19+
## popconfirm
20+
21+
okButtonProps、cancelButtonProps 扁平化处理
22+
23+
v-model -> v-model:visible
24+
25+
## popover
26+
27+
v-model -> v-model:visible
28+
29+
## Tooltip
30+
31+
v-model -> v-model:visible

components/_util/BaseMixin.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,10 @@ export default {
2424
__emit() {
2525
// 直接调用listeners,底层组件不需要vueTool记录events
2626
const args = [].slice.call(arguments, 0);
27-
const eventName = args[0];
28-
const event = this[eventName];
27+
let eventName = args[0];
28+
// TODO: 后续统一改成onXxxx,不在运行时转,提升性能
29+
eventName = `on${eventName[0].toUpperCase()}${eventName.substring(1)}`;
30+
const event = this.$props[eventName] || this.$attrs[eventName];
2931
if (args.length && event) {
3032
if (Array.isArray(event)) {
3133
for (let i = 0, l = event.length; i < l; i++) {

components/_util/ContainerRender.jsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export default {
2424
}
2525
},
2626

27-
beforeDestroy() {
27+
beforeUnmount() {
2828
if (this.autoDestroy) {
2929
this.removeContainer();
3030
}

components/_util/Portal.js

+7-10
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import PropTypes from './vue-types';
2-
import { cloneElement } from './vnode';
2+
import { Teleport } from 'vue';
33

44
export default {
55
name: 'Portal',
@@ -8,6 +8,10 @@ export default {
88
children: PropTypes.any.isRequired,
99
didUpdate: PropTypes.func,
1010
},
11+
data() {
12+
this._container = null;
13+
return {};
14+
},
1115
mounted() {
1216
this.createContainer();
1317
},
@@ -20,7 +24,7 @@ export default {
2024
}
2125
},
2226

23-
beforeDestroy() {
27+
beforeUnmount() {
2428
this.removeContainer();
2529
},
2630
methods: {
@@ -37,14 +41,7 @@ export default {
3741

3842
render() {
3943
if (this._container) {
40-
return cloneElement(this.$props.children, {
41-
directives: [
42-
{
43-
name: 'ant-portal',
44-
value: this._container,
45-
},
46-
],
47-
});
44+
return <Teleport to={this._container}>{this.$props.children}</Teleport>;
4845
}
4946
return null;
5047
},

components/_util/PortalWrapper.js

+4-9
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import PropTypes from './vue-types';
22
import switchScrollingEffect from './switchScrollingEffect';
33
import setStyle from './setStyle';
44
import Portal from './Portal';
5+
import createRefHooks from './createRefHooks';
56

67
let openCount = 0;
78
const windowIsUndefined = !(
@@ -23,6 +24,7 @@ export default {
2324
visible: PropTypes.bool,
2425
},
2526
data() {
27+
this._component = null;
2628
const { visible } = this.$props;
2729
openCount = visible ? openCount + 1 : openCount;
2830
return {};
@@ -46,7 +48,7 @@ export default {
4648
}
4749
},
4850
},
49-
beforeDestroy() {
51+
beforeUnmount() {
5052
const { visible } = this.$props;
5153
// 离开时不会 render, 导到离开时数值不变,改用 func 。。
5254
openCount = visible && openCount ? openCount - 1 : openCount;
@@ -140,14 +142,7 @@ export default {
140142
<Portal
141143
getContainer={this.getDomContainer}
142144
children={children(childProps)}
143-
{...{
144-
directives: [
145-
{
146-
name: 'ant-ref',
147-
value: this.savePortal,
148-
},
149-
],
150-
}}
145+
{...createRefHooks(this.savePortal)}
151146
></Portal>
152147
);
153148
}

components/_util/createRefHooks.js

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
const createRef = fn => {
2+
return {
3+
onVnodeBeforeMount: vnode => {
4+
fn(vnode.component || vnode.el, vnode.key);
5+
},
6+
onVnodeUpdated: vnode => {
7+
fn(vnode.component || vnode.el, vnode.key);
8+
},
9+
onVnodeUnmounted: vnode => {
10+
fn(null, vnode.key);
11+
},
12+
};
13+
};
14+
export default createRef;

components/_util/getTransitionProps.js

+7-24
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,16 @@
11
import animate from './css-animation';
2-
const noop = () => {};
32
const getTransitionProps = (transitionName, opt = {}) => {
4-
const { beforeEnter, enter, afterEnter, leave, afterLeave, appear = true, tag, nativeOn } = opt;
53
const transitionProps = {
6-
props: {
7-
appear,
8-
css: false,
4+
appear: true,
5+
css: false,
6+
onEnter: (el, done) => {
7+
animate(el, `${transitionName}-enter`, done);
98
},
10-
on: {
11-
beforeEnter: beforeEnter || noop,
12-
enter:
13-
enter ||
14-
((el, done) => {
15-
animate(el, `${transitionName}-enter`, done);
16-
}),
17-
afterEnter: afterEnter || noop,
18-
leave:
19-
leave ||
20-
((el, done) => {
21-
animate(el, `${transitionName}-leave`, done);
22-
}),
23-
afterLeave: afterLeave || noop,
9+
onLeave: (el, done) => {
10+
animate(el, `${transitionName}-leave`, done);
2411
},
25-
nativeOn,
12+
...opt,
2613
};
27-
// transition-group
28-
if (tag) {
29-
transitionProps.tag = tag;
30-
}
3114
return transitionProps;
3215
};
3316

components/_util/openAnimation.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import cssAnimation from './css-animation';
22
import raf from 'raf';
3-
import Vue from 'vue';
3+
import { nextTick } from 'vue';
44

55
function animate(node, show, done) {
66
let height;
@@ -55,7 +55,7 @@ function animate(node, show, done) {
5555

5656
const animation = {
5757
enter(node, done) {
58-
Vue.nextTick(() => {
58+
nextTick(() => {
5959
animate(node, true, done);
6060
});
6161
},

0 commit comments

Comments
 (0)