|
@@ -13,6 +13,7 @@ import { storeData } from "/src/store";
|
|
import { api_back } from "/src/helpers/communication";
|
|
import { api_back } from "/src/helpers/communication";
|
|
import Hammer from "hammerjs";
|
|
import Hammer from "hammerjs";
|
|
import { Button, Icon, Popup, Space } from "vant";
|
|
import { Button, Icon, Popup, Space } from "vant";
|
|
|
|
+import GuideIndex from "./guide/guide-index";
|
|
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
name: "viewFigner",
|
|
name: "viewFigner",
|
|
@@ -30,6 +31,7 @@ export default defineComponent({
|
|
setup(props, { emit }) {
|
|
setup(props, { emit }) {
|
|
const subject = props.subject || "pan-flute";
|
|
const subject = props.subject || "pan-flute";
|
|
const data = reactive({
|
|
const data = reactive({
|
|
|
|
+ loading: true,
|
|
subject: subject,
|
|
subject: subject,
|
|
realKey: 0,
|
|
realKey: 0,
|
|
notes: [] as IFIGNER_INSTRUMENT_Note[],
|
|
notes: [] as IFIGNER_INSTRUMENT_Note[],
|
|
@@ -67,6 +69,9 @@ export default defineComponent({
|
|
}
|
|
}
|
|
data.tips = fignerData.tips || [];
|
|
data.tips = fignerData.tips || [];
|
|
setNotes();
|
|
setNotes();
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ data.loading = false;
|
|
|
|
+ }, 600)
|
|
}
|
|
}
|
|
};
|
|
};
|
|
const setNotes = () => {
|
|
const setNotes = () => {
|
|
@@ -257,6 +262,7 @@ export default defineComponent({
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div
|
|
<div
|
|
|
|
+ id="finger-note-2"
|
|
class={[styles.tizhi, canTizhi && styles.canDisplay]}
|
|
class={[styles.tizhi, canTizhi && styles.canDisplay]}
|
|
onClick={() =>
|
|
onClick={() =>
|
|
(fingerData.relationshipIndex = fingerData.relationshipIndex === 0 ? 1 : 0)
|
|
(fingerData.relationshipIndex = fingerData.relationshipIndex === 0 ? 1 : 0)
|
|
@@ -272,10 +278,10 @@ export default defineComponent({
|
|
</Button> */}
|
|
</Button> */}
|
|
<div class={styles.noteContent}>
|
|
<div class={styles.noteContent}>
|
|
<div class={styles.noteBox}>
|
|
<div class={styles.noteBox}>
|
|
- {data.notes.map((note: IFIGNER_INSTRUMENT_Note) => {
|
|
|
|
|
|
+ {data.notes.map((note: IFIGNER_INSTRUMENT_Note, index: number) => {
|
|
const steps = new Array(Math.abs(note.step)).fill(1);
|
|
const steps = new Array(Math.abs(note.step)).fill(1);
|
|
return (
|
|
return (
|
|
- <div draggable={false} class={styles.note} onClick={() => noteClick(note)}>
|
|
|
|
|
|
+ <div id={index == 0 ? 'finger-note-0' : ''} draggable={false} class={styles.note} onClick={() => noteClick(note)}>
|
|
{data.realKey === note.realKey ? (
|
|
{data.realKey === note.realKey ? (
|
|
<img draggable={false} src={icons.icon_btn_ylow} />
|
|
<img draggable={false} src={icons.icon_btn_ylow} />
|
|
) : (
|
|
) : (
|
|
@@ -324,7 +330,7 @@ export default defineComponent({
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class={styles.toggleBtn} onClick={() => (data.tnoteShow = true)}>
|
|
|
|
|
|
+ <div id="finger-note-1" class={styles.toggleBtn} onClick={() => (data.tnoteShow = true)}>
|
|
<div>
|
|
<div>
|
|
<sup>{data.activeTone.mark && (data.activeTone.mark === "rise" ? "#" : "b")}</sup>
|
|
<sup>{data.activeTone.mark && (data.activeTone.mark === "rise" ? "#" : "b")}</sup>
|
|
{data.activeTone.name}
|
|
{data.activeTone.name}
|
|
@@ -381,6 +387,8 @@ export default defineComponent({
|
|
</Space>
|
|
</Space>
|
|
</div>
|
|
</div>
|
|
</Popup>
|
|
</Popup>
|
|
|
|
+
|
|
|
|
+ {!data.loading && <GuideIndex list={['finger']} />}
|
|
</div>
|
|
</div>
|
|
);
|
|
);
|
|
};
|
|
};
|