Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

194
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!