|
@@ -1,6 +1,14 @@
|
|
|
import { PropType, defineComponent, onMounted, reactive, ref } from 'vue';
|
|
|
import styles from './index.module.less';
|
|
|
-import { NButton, NCascader, NInput, NSelect, NSpace } from 'naive-ui';
|
|
|
+import {
|
|
|
+ NButton,
|
|
|
+ NCascader,
|
|
|
+ NInput,
|
|
|
+ NSelect,
|
|
|
+ NSpace,
|
|
|
+ NTreeSelect,
|
|
|
+ TreeSelectOverrideNodeClickBehavior
|
|
|
+} from 'naive-ui';
|
|
|
import { resourceTypeArray } from '/src/utils/searchArray';
|
|
|
import { useCatchStore } from '/src/store/modules/catchData';
|
|
|
import { useThrottleFn } from '@vueuse/core';
|
|
@@ -52,6 +60,14 @@ export default defineComponent({
|
|
|
// }
|
|
|
// return ids;
|
|
|
// };
|
|
|
+
|
|
|
+ const override: TreeSelectOverrideNodeClickBehavior = ({ option }) => {
|
|
|
+ if (option.children) {
|
|
|
+ return 'toggleExpand';
|
|
|
+ }
|
|
|
+ return 'default';
|
|
|
+ };
|
|
|
+
|
|
|
onMounted(async () => {
|
|
|
// await catchStore.getMusicSheetCategory();
|
|
|
await catchStore.getMusicTagTreeApi();
|
|
@@ -109,7 +125,7 @@ export default defineComponent({
|
|
|
</div>
|
|
|
{forms.type === 'MUSIC' && props.type === 'shareResources' && (
|
|
|
<div class={styles.searchSelect}>
|
|
|
- <NCascader
|
|
|
+ {/* <NCascader
|
|
|
placeholder="全部教材"
|
|
|
options={[
|
|
|
{ id: '', name: '全部教材' },
|
|
@@ -136,6 +152,25 @@ export default defineComponent({
|
|
|
// forms.musicSheetCategoriesId = selectValue[2] || null;
|
|
|
onSearch();
|
|
|
}}
|
|
|
+ /> */}
|
|
|
+ <NTreeSelect
|
|
|
+ placeholder="全部教材"
|
|
|
+ showPath
|
|
|
+ overrideDefaultNodeClickBehavior={override}
|
|
|
+ options={[
|
|
|
+ { id: '', name: '全部教材' },
|
|
|
+ ...catchStore.getMusicTagTree
|
|
|
+ ]}
|
|
|
+ clearable
|
|
|
+ childrenField="children"
|
|
|
+ labelField="name"
|
|
|
+ keyField="id"
|
|
|
+ v-model:value={musics.value}
|
|
|
+ onUpdate:value={(value: any) => {
|
|
|
+ console.log(value, 'value');
|
|
|
+ forms.bookVersionId = value || '';
|
|
|
+ onSearch();
|
|
|
+ }}
|
|
|
/>
|
|
|
</div>
|
|
|
)}
|