target/classes/static/plugins/element-ui/packages/cascader-panel/src/cascader-panel.vue
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<template>
<div
:class="[
'el-cascader-panel',
border && 'is-bordered'
]"
@keydown="handleKeyDown">
<cascader-menu
ref="menu"
v-for="(menu, index) in menus"
:index="index"
:key="index"
:nodes="menu"></cascader-menu>
</div>
</template>
<script>
import CascaderMenu from './cascader-menu';
import Store from './store';
import merge from 'element-ui/src/utils/merge';
import AriaUtils from 'element-ui/src/utils/aria-utils';
import scrollIntoView from 'element-ui/src/utils/scroll-into-view';
import {
noop,
coerceTruthyValueToArray,
isEqual,
isEmpty,
valueEquals
} from 'element-ui/src/utils/util';
const { keys: KeyCode } = AriaUtils;
const DefaultProps = {
expandTrigger: 'click', // or hover
multiple: false,
checkStrictly: false, // whether all nodes can be selected
emitPath: true, // wether to emit an array of all levels value in which node is located
lazy: false,
lazyLoad: noop,
value: 'value',
label: 'label',
children: 'children',
leaf: 'leaf',
disabled: 'disabled',
hoverThreshold: 500
};
const isLeaf = el => !el.getAttribute('aria-owns');
const getSibling = (el, distance) => {
const { parentNode } = el;
if (parentNode) {
const siblings = parentNode.querySelectorAll('.el-cascader-node[tabindex="-1"]');
const index = Array.prototype.indexOf.call(siblings, el);
return siblings[index + distance] || null;
}
return null;
};
const getMenuIndex = (el, distance) => {
if (!el) return;
后面还有 322 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
