Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

OSD 一直不识别是为什么呢?不会进入事件,addOSDMarker 返回的也是null

Abierto
#149 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
25/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
typescript
Área
frontend

Línea de trabajo

Comienza con el ejemplo de TypeScript inline de uni-app, especialmente con el controlador onLoad, la configuración de wx.createVKSession, la llamada a addOSDMarker y el registro del evento startOSD. Reproduce el ID de marcador null y los eventos de anchor ausentes indicados en el informe; después, consulta el comportamiento de la API relevante y documenta una causa o corrección confirmada para este ejemplo.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

我用uniapp开发的,全部代码如下。不会进入事件

<script setup lang="ts">
import {onLoad} from "@dcloudio/uni-app";

let session :any= null
let markerId :any= null

onLoad((op:any)=>{
    // @ts-ignore
    const version = wx.getAppBaseInfo().SDKVersion
    console.log("url",version,op.url)
    // @ts-ignore
    session = wx.createVKSession({
        track: {
            OSD: true,
        }
    })
    addOSDMarker(op.url);
})

function startOSD(){
    session.start((err:any)=>{
        console.log("start err",err)
        session.on("addAnchors",(anchors :any[])=>{
            console.log("addAnchors",anchors)
        })
        session.on("updateAnchors",(anchors :any[])=>{
            console.log("updateAnchors",anchors)
        })
        session.on("removeAnchors",(anchors :any[])=>{
            console.log("removeAnchors",anchors)
        })
    })

}
function addOSDMarker(url:string) {
    // @ts-ignore
    const path = `${wx.env.USER_DATA_PATH}/find_osd_obj.jpg`
    // @ts-ignore
    wx.downloadFile({
        url: url,
        filePath:path,
        success: (obj:any) => {
            console.log("downloadFile success",obj)
            markerId = session.addOSDMarker(obj.filePath)
            console.log('addOSDMarker', markerId)
            startOSD()
        }
    })
}
function btnTest(){
    console.log("getAllOSDMarker",session.getAllOSDMarker())

}
</script>

<template>
    <camera type="webgl" style="width: 100%; height: 70vh;">
    </camera>
    <button @click="btnTest">测试</button>
</template>

<style scoped lang="scss">

</style>
Lenguaje dominante
JavaScript
Estrellas
7.2k
Forks
2.2k
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de wechat-miniprogram/miniprogram-demo

Todos los issues de wechat-miniprogram/miniprogram-demo

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.