如何使用aurelia cli捆绑和导入缓冲区npm包?
在我的下一个Esaurelia cli项目中,我尝试使用名为bs58的npm模块。bs58使用节点缓冲区,因此我在浏览器中包含了用于缓冲区支持的npm缓冲区模块。缓冲区依赖于其他几个模块,我也包括了这些模块 在aurelia.json中,我列出了包和依赖项:如何使用aurelia cli捆绑和导入缓冲区npm包?,aurelia,Aurelia,在我的下一个Esaurelia cli项目中,我尝试使用名为bs58的npm模块。bs58使用节点缓冲区,因此我在浏览器中包含了用于缓冲区支持的npm缓冲区模块。缓冲区依赖于其他几个模块,我也包括了这些模块 在aurelia.json中,我列出了包和依赖项: ... { "name": "base64-js", "path": "../node_modules/base64-js", "main": "index"
...
{
"name": "base64-js",
"path": "../node_modules/base64-js",
"main": "index"
},
{
"name": "ieee754",
"path": "../node_modules/ieee754",
"main": "index"
},
{
"name": "buffer",
"path": "../node_modules/buffer",
"main": "index",
"deps": [
"base64-js",
"ieee754"
]
},
{
"name": "base-x",
"path": "../node_modules/base-x",
"main": "index"
},
{
"name": "bs58",
"path": "../node_modules/bs58",
"main": "index",
"deps": [
"base-x"
]
}
...
在我的代码中,我有:
import bs58 from 'bs58';
...
bs58.decode(...);
当我调用bs58.decode时,我得到“缓冲区未定义”。
我尝试了几种不同的导入缓冲区的方法,但没有任何东西导致它定义全局缓冲区对象,例如
import 'buffer';
import Buffer from 'buffer';
import { Buffer} from 'buffer';
require('buffer');
在aurelia cli中包含缓冲区的正确方法是什么?base-x软件包正在寻找全局缓冲区,因此请为其提供一个:
// aurelia.json
{
"ieee754",
"base64-js",
"buffer",
"base-x",
"bs58"
}
// some js file
import { Buffer } from 'buffer';
window.Buffer = Buffer;
import bs58 from 'bs58';
在黑暗中拍摄。。。尝试将
“buffer”
添加到bs58
的Dep列表中,因为bs58
似乎依赖于buffer
。另外,您能否检查您的“main”
是否实际上是文件夹。/node\u modules/buffer
中的index.js
?它并不总是索引。确保main
指向要导入的主JavaScript文件。