|
@@ -27,6 +27,12 @@ export default defineComponent({
|
|
return state.times[state.activeNoteIndex]?.realKey || -1;
|
|
return state.times[state.activeNoteIndex]?.realKey || -1;
|
|
});
|
|
});
|
|
|
|
|
|
|
|
+ // 竖笛、陶笛,云教练的乐器图片不需要正面两个字
|
|
|
|
+ const specialBgFinger = computed(() => {
|
|
|
|
+ const list: any = ['baroque-recorder', 'piccolo', 'ocarina', 'whistling']
|
|
|
|
+ return list.includes(state.fingeringInfo.name);
|
|
|
|
+ });
|
|
|
|
+
|
|
const doubeClick = () => {
|
|
const doubeClick = () => {
|
|
const nowTime = Date.now();
|
|
const nowTime = Date.now();
|
|
if (nowTime - fingerData.delay < 300) {
|
|
if (nowTime - fingerData.delay < 300) {
|
|
@@ -61,7 +67,7 @@ export default defineComponent({
|
|
) : (
|
|
) : (
|
|
<div onClick={() => doubeClick()} class={[styles.fingeringContainer, styles.vertical, state.fingeringInfo.name, state.fingeringInfo.name === 'hulusi-flute' ? styles.hulusiTop : '']}>
|
|
<div onClick={() => doubeClick()} class={[styles.fingeringContainer, styles.vertical, state.fingeringInfo.name, state.fingeringInfo.name === 'hulusi-flute' ? styles.hulusiTop : '']}>
|
|
<div class={styles.imgs}>
|
|
<div class={styles.imgs}>
|
|
- <img class="driver-7" src={fingerData.subject?.json?.full} />
|
|
|
|
|
|
+ <img class="driver-7" src={specialBgFinger.value ? fingerData.subject?.json?.fullSpe : fingerData.subject?.json?.full} />
|
|
{rs.map((key: number | string, index: number) => {
|
|
{rs.map((key: number | string, index: number) => {
|
|
const nk: string = typeof key === "string" ? key.replace("active-", "") : String(key);
|
|
const nk: string = typeof key === "string" ? key.replace("active-", "") : String(key);
|
|
return <img data-index={nk} src={fingerData.subject?.json?.[nk]} />;
|
|
return <img data-index={nk} src={fingerData.subject?.json?.[nk]} />;
|