element ui的源码问题?
在看element ui的源码的时候看到dialog,有个疑惑,props中没有visible,也没有看见哪里定义了它,就用它了,而且使用这个弹窗组件的时候还可以给visible传值,我不是很能清楚怎么回事
回复
1个回答

test
2024-06-28
visible
属性是通过 mixins
中的 Popup
混入的,源码如下:
/packages/dialog/src/component.vue
import Popup from 'element-ui/src/utils/popup';
import Migrating from 'element-ui/src/mixins/migrating';
import emitter from 'element-ui/src/mixins/emitter';
export default {
name: 'ElDialog',
mixins: [Popup, emitter, Migrating],
/src/utils/popup/index.js
import Vue from 'vue';
import merge from 'element-ui/src/utils/merge';
import PopupManager from 'element-ui/src/utils/popup/popup-manager';
import getScrollBarWidth from '../scrollbar-width';
import { getStyle, addClass, removeClass, hasClass } from '../dom';
let idSeed = 1;
let scrollBarWidth;
export default {
props: {
visible: {
type: Boolean,
default: false
},
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容