fix: update button
parent
242b5a3d99
commit
ec4d6597d1
|
@ -1 +1 @@
|
||||||
Subproject commit f3b049411f17e556d8795f40d41bfadb471ae630
|
Subproject commit adbfcd30aeb6c125defa35102ed659f1be03c672
|
|
@ -1,4 +1,5 @@
|
||||||
import { filterEmpty } from '../_util/props-util';
|
import { inject } from 'vue';
|
||||||
|
import { filterEmpty, getSlot } from '../_util/props-util';
|
||||||
import PropTypes from '../_util/vue-types';
|
import PropTypes from '../_util/vue-types';
|
||||||
import { ConfigConsumerProps } from '../config-provider';
|
import { ConfigConsumerProps } from '../config-provider';
|
||||||
|
|
||||||
|
@ -14,8 +15,11 @@ export { ButtonGroupProps };
|
||||||
export default {
|
export default {
|
||||||
name: 'AButtonGroup',
|
name: 'AButtonGroup',
|
||||||
props: ButtonGroupProps,
|
props: ButtonGroupProps,
|
||||||
inject: {
|
setup() {
|
||||||
configProvider: { default: () => ConfigConsumerProps },
|
const configProvider = inject('configProvider') || ConfigConsumerProps;
|
||||||
|
return {
|
||||||
|
configProvider,
|
||||||
|
};
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -26,7 +30,7 @@ export default {
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
render() {
|
render() {
|
||||||
const { prefixCls: customizePrefixCls, size, $slots } = this;
|
const { prefixCls: customizePrefixCls, size } = this;
|
||||||
const getPrefixCls = this.configProvider.getPrefixCls;
|
const getPrefixCls = this.configProvider.getPrefixCls;
|
||||||
const prefixCls = getPrefixCls('btn-group', customizePrefixCls);
|
const prefixCls = getPrefixCls('btn-group', customizePrefixCls);
|
||||||
|
|
||||||
|
@ -47,6 +51,6 @@ export default {
|
||||||
[`${prefixCls}`]: true,
|
[`${prefixCls}`]: true,
|
||||||
[`${prefixCls}-${sizeCls}`]: sizeCls,
|
[`${prefixCls}-${sizeCls}`]: sizeCls,
|
||||||
};
|
};
|
||||||
return <div class={classes}>{filterEmpty($slots.default)}</div>;
|
return <div class={classes}>{filterEmpty(getSlot(this))}</div>;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -69,7 +69,7 @@ export default {
|
||||||
$slots,
|
$slots,
|
||||||
$attrs,
|
$attrs,
|
||||||
} = this;
|
} = this;
|
||||||
const getPrefixCls = this.configProvider().getPrefixCls;
|
const getPrefixCls = this.configProvider.getPrefixCls;
|
||||||
const prefixCls = getPrefixCls('btn', customizePrefixCls);
|
const prefixCls = getPrefixCls('btn', customizePrefixCls);
|
||||||
const autoInsertSpace = this.configProvider.autoInsertSpaceInButton !== false;
|
const autoInsertSpace = this.configProvider.autoInsertSpaceInButton !== false;
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ function getWatch(keys = []) {
|
||||||
const watch = {};
|
const watch = {};
|
||||||
keys.forEach(k => {
|
keys.forEach(k => {
|
||||||
watch[k] = function(value) {
|
watch[k] = function(value) {
|
||||||
this._proxyVm._data[k] = value;
|
this.configProvider[k] = value;
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
return watch;
|
return watch;
|
||||||
|
@ -28,21 +28,19 @@ const ConfigProvider = {
|
||||||
pageHeader: PropTypes.object,
|
pageHeader: PropTypes.object,
|
||||||
transformCellText: PropTypes.func,
|
transformCellText: PropTypes.func,
|
||||||
},
|
},
|
||||||
setup(props, context) {
|
setup(props) {
|
||||||
provide(
|
const configProvider = reactive({
|
||||||
'configProvider',
|
|
||||||
reactive({
|
|
||||||
...props,
|
...props,
|
||||||
getPrefixCls: context.getPrefixCls,
|
getPrefixCls: undefined,
|
||||||
renderEmpty: context.renderEmptyComponent,
|
renderEmpty: undefined,
|
||||||
}),
|
});
|
||||||
);
|
provide('configProvider', configProvider);
|
||||||
|
return { configProvider };
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.configProvider.getPrefixCls = this.getPrefixCls;
|
||||||
|
this.configProvider.renderEmpty = this.renderEmpty;
|
||||||
},
|
},
|
||||||
// provide() {
|
|
||||||
// return {
|
|
||||||
// configProvider: this._proxyVm,
|
|
||||||
// };
|
|
||||||
// },
|
|
||||||
watch: {
|
watch: {
|
||||||
...getWatch([
|
...getWatch([
|
||||||
'prefixCls',
|
'prefixCls',
|
||||||
|
|
|
@ -1,14 +1,18 @@
|
||||||
<template>
|
<template>
|
||||||
<a-config-provider prefixCls="ss">
|
<a-config-provider>
|
||||||
jdjj
|
<a-button-group class="dddd" style="color: red" @click="onClick">
|
||||||
<div>ddd</div>
|
<a-button>Cancel</a-button>
|
||||||
|
<a-button type="primary">
|
||||||
|
OK
|
||||||
|
</a-button>
|
||||||
|
</a-button-group>
|
||||||
<a-button
|
<a-button
|
||||||
:class="['test']"
|
:class="['test']"
|
||||||
class="aaa"
|
class="aaa"
|
||||||
style="display: inline"
|
style="display: inline"
|
||||||
block
|
block
|
||||||
@click="onClick"
|
|
||||||
:type="type"
|
:type="type"
|
||||||
|
@click="onClick"
|
||||||
>
|
>
|
||||||
Primary
|
Primary
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
Loading…
Reference in New Issue