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

214
Views
¿Cómo agregar esta biblioteca (web3) y usarla en mi página html?

Tengo un proyecto de nodo en el que intento usar web3 en una página html simple para que los usuarios puedan escribir algo en un contrato inteligente simple. El paso 1 que intento es simplemente tener acceso al objeto web3 en un archivo JavaScript llamado main.html.

Aquí está la estructura de carpetas:

 index.js package.json main.html (uses main.js) assets/ js/ main.js

El siguiente código que uso para comenzar con la red de prueba de ganache en mi computadora:

 const Web3 = require('web3'); const web3 = new Web3 ( "http://localhost:7545" ) const ethEnabled = async () => { if (window.ethereum) { await window.ethereum.send('eth_requestAccounts'); window.web3 = new Web3(window.ethereum); console.log("Connected to web3"); return true; } alert("Error - could not connect via web3.js"); return false; }

Sin embargo, cuando pego este código en la parte superior de assets/js/main.js obtengo lo siguiente:

Uncaught ReferenceError: require is not defined at main.js:5

Así que ni siquiera puedo usar el paquete require , y mucho menos el paquete web3 , los cuales tengo instalados a través npm install .

Sin embargo, cuando pego el código web3 anterior en index.js , no parece dar un error:

 const express = require('express') const app = express() const port = 3000 const Web3 = require('web3'); const web3 = new Web3 ( "http://localhost:7545" ) const ethEnabled = async () => { if (window.ethereum) { await window.ethereum.send('eth_requestAccounts'); window.web3 = new Web3(window.ethereum); console.log("Connected to web3"); return true; } alert("Error - could not connect via web3.js"); return false; } app.use(express.static("./assets")); app.get('/', (req, res) => { //res.send('Hello World!') res.sendFile('./main.html', { root: __dirname }); }) app.listen(port, () => { console.log(`Example app listening at http://localhost:${port}`) })

Quiero usar la funcionalidad web3 en main.html con main.js , ya que el usuario estaría completando un formulario, presionando un botón, luego usaría la funcionalidad web3 para escribir algo en mi contrato simple.

Pero creo que no entiendo el diseño y la estructura del proyecto node.js Dado el caso de uso anterior, ¿cómo debo proceder? Cuando coloco el código de inicio de web3 en index.js , no sé cómo acceder al objeto web3 en main.js ¿Cómo debería hacer esto?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Debe usar un archivo js puro en su .html. Agregue el script en su encabezado y solo instancia la clase Web3: new Web3 ( "http://localhost:7545" ) ,

 <script src="https://github.com/ChainSafe/web3.js/blob/v1.2.11/dist/web3.min.js></script>
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!