Si agrego las siguientes líneas en mi código, arroja el siguiente error:
import { BIP32Interface } from "bip32"; let node: BIP32Interface = bip32.fromBase58(key);
Error:
Uncaught ReferenceError: Buffer is not defined
Estoy usando el mismo paquete en una aplicación Next.js, así que creo que el problema aquí es que no tengo el entorno node.js cuando se realiza la compilación...
¿Cómo podría pasar este problema?
Intenté: hilo agregar búfer ->
window.Buffer = window.Buffer || require("buffer").Buffer;
¿Algunas ideas?
Instale el paquete de búfer del navegador:
npm install --save buffer
Importarlo y usarlo directamente, ejemplo:
import {Buffer} from 'buffer'; Buffer.from('anything','base64');
Recibí este error de búfer cuando intenté cargar un objeto (doc/pdf/image), etc. desde reaccionar a AWS S3 Bucket. Luego, después de referir varios sitios web, obtuve la solución a continuación.
Encuentre este ejemplo de código de reacción para comprenderlo.
import logo from './logo.svg'; import './App.css'; import S3FileUpload from 'react-s3'; window.Buffer = window.Buffer || require("buffer").Buffer; function App() { const onFileChange = (file)=>{ const config = { bucketName: '190031527bucket01', dirName: 'photos', /* optional */ region: 'us-east-1', accessKeyId: 'AKIAQEFWNSIYUN6CMDG4', secretAccessKey: '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', } S3FileUpload.uploadFile(file, config) .then((data)=>{ console.log(data.location); }).catch((err)=>{ alert(err); }) } return ( <div className="App"> <h1>Hello React</h1> <input type="file" onChange={(e)=>onFileChange(e.target.files[0])} /> </div> ); } export default App;
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
ventana.Búfer = ventana.Búfer || require("búfer").Búfer; Agregue esta declaración después de todas las declaraciones de importación para deshacerse de "el búfer no está definido"