请问vue3 setup语法糖使用uni-app的uni.createInnerAudioContext();怎么使用
后端接口是用网易云音乐nodejs
<template>
<view class="content">
<div class="contents">
<img :src="info.image.coverImgUrl" alt="" class="image">
<div class="text">
<text >
{{ info.image.name }}
</text>
<view class="info">
<img :src="info.image.creator?.avatarUrl" alt="" class="avatarUrl">
<text>
{{info.image.creator?.nickname }}
</text>
</view>
<div class="infrom">
<div class="iconfont icon-fenxiang">{{info.image.shareCount }}</div>
<div class="iconfont icon-pinglun">{{info.image.commentCount }}</div>
<div class="iconfont icon-dingyue1">{{info.image.subscribedCount }}</div>
</div>
</div>
</div>
<div class="list" v-for="(item,index) in info.image.tracks" :key="item.id" @click="ID(item.al.id)">
<span class="index">{{ index+1 }}</span>
<div class="name">
<div>{{ item.al.name }}</div>
<div>{{ item.ar[0].name }}</div>
</div>
<p :class="[store.isplay? ' iconfont icon-bofang1':'iconfont icon-bofang_']" @click="play"></p>
<span class="iconfont icon-gengduoxiao"></span>
</div>
</view>
</template>
<script setup lang="ts">
import {onLoad} from "@dcloudio/uni-app"
import { getsongdetail, getsongurl } from "../api/serve";
import { useCounterStore } from "@/pages/store/index";
interface Person{
id: number;
image: any;
state: any;
index: number;
url:number
}
let audio:any=''
let url:any=1
let id: number = 1
let songurl: any = ''
const store = useCounterStore();
onLoad((option) => {
id = option?.id
audio = uni.createInnerAudioContext()
})
const info : Person = reactive({
image: [],
})
onMounted(async() => {
let res = await getsongdetail(id)
info.image=res.data.playlist
uni.setNavigationBarTitle({
title: info.image.name
});
})
function play() {
store.isplay = !store.isplay
}
async function ID(id:number) {
console.log(id);
songurl = await getsongurl(id)
console.log(songurl.data.data[0]);
url=songurl.data?.data[0]?.url
}
// onLoad(() => {
// const innerAudioContext = uni.createInnerAudioContext();
// innerAudioContext.autoplay = true;
// innerAudioContext.src = url
// innerAudioContext.onPlay(() => {
// console.log('开始播放');
// });
// })
// audio.autoplay=true
</script>
<style lang="less" scoped>
.content{
display: flex;
flex-direction: column;
.contents{
padding-top: 10px;
display: flex;
justify-content: space-around;
background-image:linear-gradient(rgb(14 11 11 / 0%),red);
.image{
width: 100px;
height: 100px;
border-radius: 2.667vw;
}
.text{
margin: 10px;
width: 80%;
height: 100%;
color: aliceblue;
.infrom{
width: 100%;
height: 50%;
display: flex;
justify-content: space-around;
.iconfont{
width: 60px;
height: 50px;
border-radius: 5px;
color: aliceblue;
opacity: .9;
}
}
.info{
display: flex;
align-items: center;
height: 35px;
line-height:35px ;
.avatarUrl{
margin-right: 15px;
width: 25px;
height: 25px;
border-radius: 50%;
}
}
}
}
.list{
margin: 10px 0;
display: flex;
align-items: center;
justify-content: space-between;
.icon-bofang1{
width: 10px;
text-align: end;
}
.name{
width: 80%;
text-align: left;
}
.index{
margin: 0 2.667vw;
}
}
}
</style>