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.jsprops 当中有声明 visible 属性。。

以上是 element ui的源码问题? 的全部内容, 来源链接: utcz.com/p/934790.html

回到顶部