element ui的源码问题?
在看element ui的源码的时候看到dialog,有个疑惑,props中没有visible,也没有看见哪里定义了它,就用它了,而且使用这个弹窗组件的时候还可以给visible传值,我不是很能清楚怎么回事
回答:
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
},
回答:
<el-dialog>
组件中有混入 element-ui/src/utils/popup ,在 popup/index.js
的 props
当中有声明 visible
属性。。
以上是 element ui的源码问题? 的全部内容, 来源链接: utcz.com/p/934790.html