import { NDropdown } from "naive-ui"; import { defineComponent } from "vue"; import styles from "./index.module.less"; import { getImage } from "../../images"; import { DropdownMixedOption } from "naive-ui/es/dropdown/src/interface"; /** 新建 | 保存 | 导入 | 上传 | 导出 | 打印 */ export type IFileBtnType = 'newMusic' | 'save' | 'xml' | 'upload' | 'png' | 'wav' | 'midi' | 'print' export default defineComponent({ name: "FileBtn", emits: ["select"], setup(props, { emit }) { const options: DropdownMixedOption[] = [ { label: "新建曲谱", key: "newMusic", }, { label: () => (
保存
), key: "save", disabled: true }, { label: () => (
导入
), key: "import", children: [ { label: "xml", key: 'xml' }, ], }, { label: () => (
上传到我的资源
), key: "upload", disabled: true }, { label: () => (
导出
), key: "export", children: [ { label: "PNG", key: "png", }, { label: "WAV", key: "wav", }, { label: "MIDI", key: "midi", }, ], }, { label: () => (
打印
), key: "print", disabled: true }, ]; return () => ( { console.log("🚀 ~ val:", val); emit("select", val); }} >
); }, });