Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

196
Vistas
Después de usar vite+vue3 para compilar el proyecto e importar roslibjs, se informa un error

Uso vue3, cuando creo un proyecto con vite , importo la biblioteca roslibjs y obtengo un error al usar una de las funciones, como se muestra a continuación. Pero cuando trato de usar vuecli para crear un proyecto, después de importar la misma biblioteca, todo está bien. ingrese la descripción de la imagen aquí

 // vite created 'vite-app' project npm init vite@latest cd vite-app npm instal --save roslib // vuecli created 'vuecli-app' project vue create vuecli-app cd vuecli-app npm install --save roslib
 <script setup> import ROSLIB from "roslib"; let ws_address = '127.0.0.1:9090' let connected = false; const ros = new ROSLIB.Ros({ url: ws_address, }) const connect = () => { ros.on("connection", () => { connected = true; console.log("Connected!"); }); ros.on("error", (error) => { console.log("Error connecting to websocket server: ", error); }); ros.on("close", () => { connected = false; console.log("Connection to websocket server closed."); }); } const disconnect = () => { ros.close(); } </script>
 <template> <div> <p class="text-success" v-if="connected">Connected!</p> <p class="text-danger" v-else>Not connected!</p> <input type="text" v-model="ws_address" /> <br /> <button @click="disconnect" class="btn btn-danger" v-if="connected">Disconnect!</button> <button @click="connect" class="btn btn-success" v-else>Connect!</button> </div> </template>
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No estoy seguro de qué hace Vue CLI + Webpack de manera diferente para que roslib funcione en el navegador.

Sin embargo, en el navegador, debe usar las versiones preconstruidas de roslib (donde se transpilan las construcciones específicas del nodo) según los documentos :

Si usa roslib en un navegador, todas las clases se exportarán a una variable global llamada ROSLIB. Si usa nodejs, esta es la variable que obtiene cuando lo requiere ('roslib')

Importe el roslib/build/roslib.js , que establece window.ROSLIB :

 <script setup> import 'roslib/build/roslib'; const ros = new window.ROSLIB.Ros({ url: ws_address, }); ⋮ </script>

manifestación

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda