fix: confirm throw error & renderEmpty error
parent
df83968de4
commit
d7c4377551
|
@ -1 +1 @@
|
|||
Subproject commit 51cd1e3aea790432b220a7233ba189899438f031
|
||||
Subproject commit 568de59ace46dcb555a5728153f69482b2732515
|
|
@ -25,7 +25,7 @@ describe('ConfigProvider', () => {
|
|||
);
|
||||
},
|
||||
});
|
||||
expect(wrapper.find({ name: 'Wave' }).vm.csp).toBe(csp);
|
||||
expect(wrapper.findComponent('Wave').vm.csp).toBe(csp);
|
||||
});
|
||||
|
||||
it('autoInsertSpaceInButton', () => {
|
||||
|
@ -39,6 +39,6 @@ describe('ConfigProvider', () => {
|
|||
},
|
||||
});
|
||||
|
||||
expect(wrapper.find({ name: 'AButton' }).text()).toBe('确定');
|
||||
expect(wrapper.findComponent('AButton').text()).toBe('确定');
|
||||
});
|
||||
});
|
||||
|
|
|
@ -27,18 +27,13 @@ const ConfigProvider = {
|
|||
pageHeader: PropTypes.object,
|
||||
transformCellText: PropTypes.func,
|
||||
},
|
||||
setup(props) {
|
||||
const configProvider = reactive({
|
||||
...props,
|
||||
getPrefixCls: undefined,
|
||||
renderEmpty: undefined,
|
||||
});
|
||||
provide('configProvider', configProvider);
|
||||
return { configProvider };
|
||||
},
|
||||
created() {
|
||||
this.configProvider.getPrefixCls = this.getPrefixCls;
|
||||
this.configProvider.renderEmpty = this.renderEmpty;
|
||||
this.configProvider = reactive({
|
||||
...this.$props,
|
||||
getPrefixCls: this.getPrefixCls,
|
||||
renderEmpty: this.renderEmptyComponent,
|
||||
});
|
||||
provide('configProvider', this.configProvider);
|
||||
},
|
||||
watch: {
|
||||
...getWatch([
|
||||
|
|
|
@ -46,13 +46,10 @@ const LocaleProvider = {
|
|||
},
|
||||
};
|
||||
},
|
||||
created() {
|
||||
provide('localeData', this.$data);
|
||||
},
|
||||
watch: {
|
||||
locale(val) {
|
||||
this.antLocale = {
|
||||
...this.locale,
|
||||
...val,
|
||||
exist: true,
|
||||
};
|
||||
setMomentLocale(val);
|
||||
|
@ -60,6 +57,7 @@ const LocaleProvider = {
|
|||
},
|
||||
},
|
||||
created() {
|
||||
provide('localeData', this.$data);
|
||||
const { locale } = this;
|
||||
setMomentLocale(locale);
|
||||
changeConfirmLocale(locale && locale.Modal);
|
||||
|
|
|
@ -6,8 +6,6 @@ import Omit from 'omit.js';
|
|||
|
||||
export default function confirm(config) {
|
||||
const div = document.createElement('div');
|
||||
const el = document.createElement('div');
|
||||
div.appendChild(el);
|
||||
document.body.appendChild(div);
|
||||
let currentConfig = { ...Omit(config, ['parentContext']), close, visible: true };
|
||||
|
||||
|
@ -25,7 +23,7 @@ export default function confirm(config) {
|
|||
}
|
||||
function destroy(...args) {
|
||||
if (confirmDialogInstance && div.parentNode) {
|
||||
confirmDialogInstance.unmount(div);
|
||||
confirmDialogInstance.vIf = false; // hack destroy
|
||||
confirmDialogInstance = null;
|
||||
div.parentNode.removeChild(div);
|
||||
}
|
||||
|
@ -47,14 +45,14 @@ export default function confirm(config) {
|
|||
return createApp({
|
||||
parent: config.parentContext,
|
||||
data() {
|
||||
return { confirmDialogProps };
|
||||
return { confirmDialogProps, vIf: true };
|
||||
},
|
||||
render() {
|
||||
// 先解构,避免报错,原因不详
|
||||
const cdProps = { ...this.confirmDialogProps };
|
||||
return <ConfirmDialog {...cdProps} />;
|
||||
return this.vIf ? <ConfirmDialog {...cdProps} /> : null;
|
||||
},
|
||||
}).mount(el);
|
||||
}).mount(div);
|
||||
}
|
||||
|
||||
confirmDialogInstance = render(currentConfig);
|
||||
|
|
|
@ -45,7 +45,6 @@ import './transfer/style';
|
|||
import './tree/style';
|
||||
import './upload/style';
|
||||
import './layout/style';
|
||||
import './form/style';
|
||||
import './anchor/style';
|
||||
import './list/style';
|
||||
import './carousel/style';
|
||||
|
@ -59,5 +58,5 @@ import './statistic/style';
|
|||
import './result/style';
|
||||
import './descriptions/style';
|
||||
import './page-header/style';
|
||||
import './form-model/style';
|
||||
import './form/style';
|
||||
// import './color-picker/style';
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import demo from '../antdv-demo/docs/comment/demo/index';
|
||||
import demo from '../antdv-demo/docs/config-provider/demo/index';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
|
@ -103,7 +103,16 @@ module.exports = {
|
|||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'ant-design-vue/es/locale/en_US': path.join(
|
||||
__dirname,
|
||||
'./components/locale-provider/en_US.js',
|
||||
),
|
||||
'ant-design-vue/es/locale/zh_CN': path.join(
|
||||
__dirname,
|
||||
'./components/locale-provider/zh_CN.js',
|
||||
),
|
||||
'ant-design-vue': path.join(__dirname, './components'),
|
||||
|
||||
// vue$: 'vue/dist/vue.esm.js',
|
||||
},
|
||||
extensions: ['.js', '.jsx', '.vue', '.md'],
|
||||
|
|
Loading…
Reference in New Issue