vue-lazy-cascader 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -5
- package/lib/vue-lazy-cascader.common.js +9 -6
- package/lib/vue-lazy-cascader.common.js.map +1 -1
- package/lib/vue-lazy-cascader.umd.js +9 -6
- package/lib/vue-lazy-cascader.umd.js.map +1 -1
- package/lib/vue-lazy-cascader.umd.min.js +1 -1
- package/lib/vue-lazy-cascader.umd.min.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Vue Lazy Cascader 是一个vue2级联选择器组件,基于 element-ui 的级联组件。它保留了 el-cascader 的完整功能,并增加了滚动加载和远程搜索功能。
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Install
|
|
6
6
|
|
|
7
7
|
您可以通过 npm、yarn 或 pnpm 来安装 Vue Lazy Cascader。
|
|
8
8
|
|
|
@@ -24,10 +24,7 @@ yarn add vue-lazy-cascader
|
|
|
24
24
|
pnpm install vue-lazy-cascader --save
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
##
|
|
28
|
-
由于该组件并未打包element-ui相关组件,所以使用时,必须已经安装element-ui。
|
|
29
|
-
|
|
30
|
-
## 使用方法
|
|
27
|
+
## Usage
|
|
31
28
|
|
|
32
29
|
- [es模块示例](./src/components/VueLazyCascaderExample.vue)
|
|
33
30
|
|
|
@@ -36,3 +33,8 @@ pnpm install vue-lazy-cascader --save
|
|
|
36
33
|
```
|
|
37
34
|
|
|
38
35
|
- [直接script引入示例](./example/index.html)
|
|
36
|
+
|
|
37
|
+
## Tip
|
|
38
|
+
- 由于该组件并未打包element-ui相关组件,所以使用时,必须已经安装element-ui。
|
|
39
|
+
- 级联value必须唯一,否则会出错。例如相同value的子节点无法插入到不同的父节点下(待修复)
|
|
40
|
+
- 是否是最后一页要判断准确,不能单纯用已加载和接口返回相加数量 == total进行判断,因为接口返回的可能已经加载过了。[详情请看代码(搜索时候会把搜索结果append到节点store中)](./src/components/cascader/src/cascader.vue)
|
|
@@ -4966,12 +4966,12 @@ main.install = function (Vue) {
|
|
|
4966
4966
|
Vue.component(main.name, main);
|
|
4967
4967
|
};
|
|
4968
4968
|
/* harmony default export */ var scrollbar = (main);
|
|
4969
|
-
;// CONCATENATED MODULE: ./node_modules/.pnpm/vue-loader@15.11.1_css-loader@6.11.0_vue-template-compiler@2.6.14_webpack@5.91.0/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.pnpm/vue-loader@15.11.1_css-loader@6.11.0_vue-template-compiler@2.6.14_webpack@5.91.0/node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/cascader-panel/src/cascader-panel.vue?vue&type=template&id=
|
|
4970
|
-
var
|
|
4969
|
+
;// CONCATENATED MODULE: ./node_modules/.pnpm/vue-loader@15.11.1_css-loader@6.11.0_vue-template-compiler@2.6.14_webpack@5.91.0/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/.pnpm/vue-loader@15.11.1_css-loader@6.11.0_vue-template-compiler@2.6.14_webpack@5.91.0/node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/cascader-panel/src/cascader-panel.vue?vue&type=template&id=082e5e2b
|
|
4970
|
+
var cascader_panelvue_type_template_id_082e5e2b_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[
|
|
4971
4971
|
'el-cascader-panel',
|
|
4972
4972
|
_vm.border && 'is-bordered'
|
|
4973
4973
|
],on:{"keydown":_vm.handleKeyDown}},_vm._l((_vm.menus),function(menu,index){return _c('cascader-menu',{key:index,ref:"menu",refInFor:true,attrs:{"index":index,"nodes":menu},on:{"menu-scroll-bottom":function (parentNode, resolve) { return _vm.$emit('menu-scroll-bottom', parentNode, resolve); }}})}),1)}
|
|
4974
|
-
var
|
|
4974
|
+
var cascader_panelvue_type_template_id_082e5e2b_staticRenderFns = []
|
|
4975
4975
|
|
|
4976
4976
|
|
|
4977
4977
|
// EXTERNAL MODULE: ./node_modules/.pnpm/@vue+babel-helper-vue-jsx-merge-props@1.4.0/node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js
|
|
@@ -5440,7 +5440,7 @@ const stopPropagation = e => e.stopPropagation();
|
|
|
5440
5440
|
} = config;
|
|
5441
5441
|
if (!checkStrictly && isDisabled || node.loading) return;
|
|
5442
5442
|
|
|
5443
|
-
//
|
|
5443
|
+
// 如果是动态加载并且当前节点还没加载
|
|
5444
5444
|
if (config.lazy && !node.loaded) {
|
|
5445
5445
|
panel.lazyLoad(node, () => {
|
|
5446
5446
|
// 动态加载后的回调
|
|
@@ -5806,6 +5806,7 @@ var cascader_node_component = normalizeComponent(
|
|
|
5806
5806
|
});
|
|
5807
5807
|
return;
|
|
5808
5808
|
}
|
|
5809
|
+
this.$parent.$parent.computePresentContent();
|
|
5809
5810
|
toAppendData.forEach(d => {
|
|
5810
5811
|
this.panel.store.appendNode(d, parentNode);
|
|
5811
5812
|
});
|
|
@@ -6459,6 +6460,8 @@ const checkNode = el => {
|
|
|
6459
6460
|
const value = multiple ? checkedValue[0] : checkedValue;
|
|
6460
6461
|
const checkedNode = this.getNodeByValue(value) || {};
|
|
6461
6462
|
const nodes = (checkedNode.pathNodes || []).slice(0, -1);
|
|
6463
|
+
const hasUnLoaded = nodes.some(n => n.loaded === false);
|
|
6464
|
+
if (hasUnLoaded) return;
|
|
6462
6465
|
this.expandNodes(nodes);
|
|
6463
6466
|
} else {
|
|
6464
6467
|
this.activePath = [];
|
|
@@ -6660,8 +6663,8 @@ const checkNode = el => {
|
|
|
6660
6663
|
;
|
|
6661
6664
|
var cascader_panel_component = normalizeComponent(
|
|
6662
6665
|
src_cascader_panelvue_type_script_lang_js,
|
|
6663
|
-
|
|
6664
|
-
|
|
6666
|
+
cascader_panelvue_type_template_id_082e5e2b_render,
|
|
6667
|
+
cascader_panelvue_type_template_id_082e5e2b_staticRenderFns,
|
|
6665
6668
|
false,
|
|
6666
6669
|
null,
|
|
6667
6670
|
null,
|