widget.qw 1.0.0 → 1.0.1

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/build/style.css CHANGED
@@ -762,25 +762,25 @@
762
762
  margin:3px;
763
763
  }
764
764
 
765
- .cascader-pop[data-v-08539c1e] {
765
+ .cascader-pop[data-v-54dee272] {
766
766
  width: 100%;
767
767
  overflow: hidden;
768
768
  }
769
- .cascader-selector[data-v-08539c1e] {
769
+ .cascader-selector[data-v-54dee272] {
770
770
  padding: 10px;
771
771
  }
772
- .search-buttons[data-v-08539c1e] {
772
+ .search-buttons[data-v-54dee272] {
773
773
  display: flex;
774
774
  gap: 10px;
775
775
  }
776
- .clear-btn[data-v-08539c1e] {
776
+ .clear-btn[data-v-54dee272] {
777
777
  background-color: #f2f3f5;
778
778
  border: none;
779
779
  border-radius: 4px;
780
780
  padding: 4px 8px;
781
781
  font-size: 14px;
782
782
  }
783
- .confirm-btn[data-v-08539c1e] {
783
+ .confirm-btn[data-v-54dee272] {
784
784
  background-color: #1989fa;
785
785
  color: white;
786
786
  border: none;
@@ -788,19 +788,19 @@
788
788
  padding: 4px 8px;
789
789
  font-size: 14px;
790
790
  }
791
- .no-results[data-v-08539c1e] {
791
+ .no-results[data-v-54dee272] {
792
792
  text-align: center;
793
793
  padding: 20px;
794
794
  color: #969799;
795
795
  }
796
- .cascader-header[data-v-08539c1e] {
796
+ .cascader-header[data-v-54dee272] {
797
797
  padding: 10px;
798
798
  border-bottom: 1px solid #ebedf0;
799
799
  display: flex;
800
800
  justify-content: space-between;
801
801
  align-items: center;
802
802
  }
803
- .current-path[data-v-08539c1e] {
803
+ .current-path[data-v-54dee272] {
804
804
  flex: 1;
805
805
  font-size: 14px;
806
806
  color: #323233;
@@ -808,25 +808,25 @@
808
808
  overflow: hidden;
809
809
  text-overflow: ellipsis;
810
810
  }
811
- .header-right[data-v-08539c1e] {
811
+ .header-right[data-v-54dee272] {
812
812
  display: flex;
813
813
  gap: 8px;
814
814
  margin-left: auto;
815
815
  }
816
- .cancel-btn[data-v-08539c1e] {
816
+ .cancel-btn[data-v-54dee272] {
817
817
  color: #969799;
818
818
  margin-right: 5px;
819
819
  }
820
- .scroll-container[data-v-08539c1e] {
820
+ .scroll-container[data-v-54dee272] {
821
821
  height: calc(80vh - 150px);
822
822
  overflow-y: auto;
823
823
  }
824
- .cell-content[data-v-08539c1e] {
824
+ .cell-content[data-v-54dee272] {
825
825
  display: flex;
826
826
  align-items: center;
827
827
  gap: 12px;
828
828
  }
829
- .circle-selector[data-v-08539c1e] {
829
+ .circle-selector[data-v-54dee272] {
830
830
  width: 20px;
831
831
  height: 20px;
832
832
  border-radius: 50%;
@@ -836,29 +836,29 @@
836
836
  transition: all 0.2s;
837
837
  flex-shrink: 0;
838
838
  }
839
- .circle-selector.selected[data-v-08539c1e] {
839
+ .circle-selector.selected[data-v-54dee272] {
840
840
  background-color: #1989fa;
841
841
  border-color: #1989fa;
842
842
  }
843
- .circle-selector.selected .van-icon[data-v-08539c1e] {
843
+ .circle-selector.selected .van-icon[data-v-54dee272] {
844
844
  color: white;
845
845
  font-size: 14px;
846
846
  }
847
- .van-cell__right-icon[data-v-08539c1e] {
847
+ .van-cell__right-icon[data-v-54dee272] {
848
848
  color: #969799;
849
849
  font-size: 16px;
850
850
  margin-left: 8px;
851
851
  }
852
- .name[data-v-08539c1e] {
852
+ .name[data-v-54dee272] {
853
853
  flex: 1;
854
854
  overflow: hidden;
855
855
  text-overflow: ellipsis;
856
856
  white-space: nowrap;
857
857
  }
858
- .cancel-btn[data-v-08539c1e] {
858
+ .cancel-btn[data-v-54dee272] {
859
859
  color: #969799;
860
860
  }
861
861
 
862
- .user[data-v-f30fa640]{
862
+ .user[data-v-50c3a19a]{
863
863
  padding:4px 8px;
864
864
  }
@@ -20569,7 +20569,7 @@ const _sfc_main$2 = {
20569
20569
  }
20570
20570
  };
20571
20571
  var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-6744b874"]]);
20572
- var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-08539c1e] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-08539c1e] {\r\n padding: 10px;\n}\n.search-buttons[data-v-08539c1e] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-08539c1e] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-08539c1e] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-08539c1e] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-08539c1e] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-08539c1e] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-08539c1e] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-08539c1e] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-08539c1e] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-08539c1e] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-08539c1e] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-08539c1e] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-08539c1e] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-08539c1e] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-08539c1e] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-08539c1e] {\r\n color: #969799;\n}\r\n")();
20572
+ var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-54dee272] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-54dee272] {\r\n padding: 10px;\n}\n.search-buttons[data-v-54dee272] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-54dee272] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-54dee272] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-54dee272] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-54dee272] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-54dee272] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-54dee272] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-54dee272] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-54dee272] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-54dee272] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-54dee272] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-54dee272] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-54dee272] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-54dee272] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-54dee272] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-54dee272] {\r\n color: #969799;\n}\r\n")();
20573
20573
  const _hoisted_1 = {
20574
20574
  class: "cascader-selector"
20575
20575
  };
@@ -20803,8 +20803,8 @@ const _sfc_main$1 = {
20803
20803
  };
20804
20804
  }
20805
20805
  };
20806
- var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-08539c1e"]]);
20807
- var CascaderPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user[data-v-f30fa640]{\r\n padding:4px 8px;\n}\r\n")();
20806
+ var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-54dee272"]]);
20807
+ var CascaderPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user[data-v-50c3a19a]{\r\n padding:4px 8px;\n}\r\n")();
20808
20808
  const _sfc_main = {
20809
20809
  __name: "CascaderPicker",
20810
20810
  props: {
@@ -20923,7 +20923,7 @@ const _sfc_main = {
20923
20923
  };
20924
20924
  }
20925
20925
  };
20926
- var CascaderPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f30fa640"]]);
20926
+ var CascaderPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-50c3a19a"]]);
20927
20927
  const secret_notify = () => {
20928
20928
  showNotify({ type: "danger", message: "\u4E25\u683C\u6267\u884C\u4FE1\u606F\u4FDD\u5BC6\u8981\u6C42\uFF0C\u5207\u5B9E\u9632\u8303\u4F01\u4E1A\u6CC4\u5BC6\u98CE\u9669", duration: 3e3 });
20929
20929
  };
@@ -21036,6 +21036,10 @@ const components = [
21036
21036
  name: "WidgetQwTreePicker",
21037
21037
  widget: TreePicker
21038
21038
  },
21039
+ {
21040
+ name: "WidgetQwCascaderPop",
21041
+ widget: CascaderPop
21042
+ },
21039
21043
  {
21040
21044
  name: "WidgetQwCascaderPicker",
21041
21045
  widget: CascaderPicker
@@ -20572,7 +20572,7 @@ var __async = (__this, __arguments, generator) => {
20572
20572
  }
20573
20573
  };
20574
20574
  var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-6744b874"]]);
20575
- var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-08539c1e] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-08539c1e] {\r\n padding: 10px;\n}\n.search-buttons[data-v-08539c1e] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-08539c1e] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-08539c1e] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-08539c1e] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-08539c1e] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-08539c1e] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-08539c1e] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-08539c1e] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-08539c1e] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-08539c1e] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-08539c1e] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-08539c1e] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-08539c1e] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-08539c1e] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-08539c1e] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-08539c1e] {\r\n color: #969799;\n}\r\n")();
20575
+ var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-54dee272] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-54dee272] {\r\n padding: 10px;\n}\n.search-buttons[data-v-54dee272] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-54dee272] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-54dee272] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-54dee272] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-54dee272] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-54dee272] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-54dee272] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-54dee272] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-54dee272] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-54dee272] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-54dee272] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-54dee272] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-54dee272] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-54dee272] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-54dee272] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-54dee272] {\r\n color: #969799;\n}\r\n")();
20576
20576
  const _hoisted_1 = {
20577
20577
  class: "cascader-selector"
20578
20578
  };
@@ -20806,8 +20806,8 @@ var __async = (__this, __arguments, generator) => {
20806
20806
  };
20807
20807
  }
20808
20808
  };
20809
- var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-08539c1e"]]);
20810
- var CascaderPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user[data-v-f30fa640]{\r\n padding:4px 8px;\n}\r\n")();
20809
+ var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-54dee272"]]);
20810
+ var CascaderPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user[data-v-50c3a19a]{\r\n padding:4px 8px;\n}\r\n")();
20811
20811
  const _sfc_main = {
20812
20812
  __name: "CascaderPicker",
20813
20813
  props: {
@@ -20926,7 +20926,7 @@ var __async = (__this, __arguments, generator) => {
20926
20926
  };
20927
20927
  }
20928
20928
  };
20929
- var CascaderPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f30fa640"]]);
20929
+ var CascaderPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-50c3a19a"]]);
20930
20930
  const secret_notify = () => {
20931
20931
  showNotify({ type: "danger", message: "\u4E25\u683C\u6267\u884C\u4FE1\u606F\u4FDD\u5BC6\u8981\u6C42\uFF0C\u5207\u5B9E\u9632\u8303\u4F01\u4E1A\u6CC4\u5BC6\u98CE\u9669", duration: 3e3 });
20932
20932
  };
@@ -21039,6 +21039,10 @@ var __async = (__this, __arguments, generator) => {
21039
21039
  name: "WidgetQwTreePicker",
21040
21040
  widget: TreePicker
21041
21041
  },
21042
+ {
21043
+ name: "WidgetQwCascaderPop",
21044
+ widget: CascaderPop
21045
+ },
21042
21046
  {
21043
21047
  name: "WidgetQwCascaderPicker",
21044
21048
  widget: CascaderPicker
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "widget.qw",
3
3
  "private": false,
4
- "version": "1.0.0",
4
+ "version": "1.0.1",
5
5
  "description": "marqstree Vue3组件库",
6
6
  "main": "build/widget.qw.es.js",
7
7
  "keywords": [
@@ -18,9 +18,9 @@
18
18
  </template>
19
19
  <script setup>
20
20
  import { reactive, onMounted, watch } from "vue";
21
- import util from "../util"
21
+ import util from "@/util"
22
22
  import { useVModel } from '@vueuse/core'
23
- import CascaderPop from './widget/CascaderPop.vue'
23
+ import CascaderPop from './CascaderPop.vue'
24
24
 
25
25
  const props = defineProps({
26
26
  modelValue: {
@@ -49,7 +49,7 @@
49
49
 
50
50
  <script setup>
51
51
  import { ref, onMounted, watch, reactive, computed } from "vue";
52
- import util from "../../util"
52
+ import util from "@/util"
53
53
  import { useVModel } from '@vueuse/core'
54
54
 
55
55
  const props = defineProps({
@@ -27,6 +27,7 @@ import ProjectDropdown from "./ProjectDropdown.vue";
27
27
  import Switch from './Switch.vue'
28
28
  import Sheet from './Sheet.vue'
29
29
  import TreePicker from './TreePicker.vue'
30
+ import CascaderPop from './CascaderPop.vue'
30
31
  import CascaderPicker from './CascaderPicker.vue'
31
32
 
32
33
  const components = [
@@ -138,6 +139,10 @@ const components = [
138
139
  name: 'WidgetQwTreePicker',
139
140
  widget: TreePicker
140
141
  },
142
+ {
143
+ name: 'WidgetQwCascaderPop',
144
+ widget: CascaderPop
145
+ },
141
146
  {
142
147
  name: 'WidgetQwCascaderPicker',
143
148
  widget: CascaderPicker
@@ -150,6 +150,11 @@ const routes: Array<RouteRecordRaw> = [
150
150
  name: "treepicker",
151
151
  component: () => import("../views/treepicker/index.vue"),
152
152
  },
153
+ {
154
+ path: "/cascaderpop",
155
+ name: "cascaderpop",
156
+ component: () => import("../views/cascaderpop/index.vue"),
157
+ },
153
158
  {
154
159
  path: "/cascaderpicker",
155
160
  name: "cascaderpicker",
@@ -0,0 +1,91 @@
1
+ <template>
2
+ <div class="page">
3
+ <van-button @click="data.isShow=true">弹出</van-button>
4
+ <widget-qw-cascader-pop v-model="data.id" v-model:show="data.isShow"
5
+ label="零件" placeholder="请选择零件"
6
+ :queryNodes="queryNodes" :queryNode="queryNode" @select="onSelect" />
7
+ </div>
8
+ </template>
9
+
10
+ <script setup>
11
+ import { onMounted, reactive, watch } from "vue";
12
+ import util from '@/util'
13
+
14
+ const data = reactive({
15
+ auth: 'require',
16
+ id: '',
17
+ isShow: false,
18
+ projectId: 'GnsMl3mO'
19
+ })
20
+
21
+ const queryNodes = async (params, setNodes) => {
22
+ if (!data.projectId)
23
+ return
24
+
25
+ let p = {
26
+ projectId: data.projectId,
27
+ hasChildren: false
28
+ }
29
+
30
+ if (params.keyword)
31
+ p.keyword = params.keyword
32
+
33
+ if (params.parentId)
34
+ p.parentId = params.parentId
35
+
36
+ let res = await util.part_children(p)
37
+ if (res.code != 200)
38
+ return
39
+
40
+ let formatNodes = res.data.map(item => {
41
+ return {
42
+ id: item.id,
43
+ label: item.formatName,
44
+ formatLabel: item.path,
45
+ hasChildren: item.hasChildren,
46
+ data: item
47
+ }
48
+ })
49
+ setNodes(formatNodes)
50
+ }
51
+
52
+ const queryNode = async (setNode) => {
53
+ let params = {
54
+ id: data.id
55
+ }
56
+ let res = await util.part_detail(params)
57
+ if (res.code != 200)
58
+ return
59
+
60
+ let formatNode = {
61
+ id: res.data.id,
62
+ label: res.data.formatName,
63
+ formatLabel: item.path,
64
+ hasChildren: res.data.hasChildren,
65
+ data: res.data
66
+ }
67
+ setNode(formatNode)
68
+ }
69
+
70
+ const onSelect=(node)=>{
71
+ console.log('onSelect',node)
72
+ }
73
+
74
+ watch(() => data.id, (newVal, oldVal) => {
75
+ console.log(newVal, oldVal)
76
+ })
77
+ </script>
78
+
79
+ <style lang="scss" scoped>
80
+ .page {
81
+ height: 100vh;
82
+ background: #fff;
83
+ text-align: center;
84
+ background-size: cover;
85
+ display: flex;
86
+ flex-direction: column;
87
+ justify-content: flex-start;
88
+ padding: 80px 15px 0 15px;
89
+ box-sizing: border-box;
90
+ }
91
+ </style>
@@ -32,6 +32,7 @@
32
32
  <van-button class="btn" type="primary" @click="router.push('/switch')">开关</van-button>
33
33
  <van-button class="btn" type="primary" @click="router.push('/sheet')">表格</van-button>
34
34
  <van-button class="btn" type="primary" @click="router.push('/treepicker')">树选择器</van-button>
35
+ <van-button class="btn" type="primary" @click="router.push('/cascaderpop')">级联弹出层</van-button>
35
36
  <van-button class="btn" type="primary" @click="router.push('/cascaderpicker')">级联选择器</van-button>
36
37
  </div>
37
38
  </template>