在 Ionic Vue 中处理 Webpack 5 的 Polyfill 问题



我正在尝试在Ionic Vue中使用cosmjs的包。当我想导入

import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing";
我收到这个问题:
If you don't want to include a polyfill, you can use an empty module like this:
resolve.fallback: { "crypto": false }

,无法在应用程序中使用该应用程序。

根据Ionic和Vue的文档,你可以很容易地将一个自定义对象合并到最终的webpack配置中。

首先,通过执行:

安装加密模块的浏览器版本npm install crypto-browserify

然后在项目根目录下创建一个vue.config.js文件,如下所示:
// vue.config.js
module.exports = {
configureWebpack: {
resolve: {
fallback: {
crypto: require.resolve( 'crypto-browserify' )
// Any other missed node module
}
}
}
};

你应该能够对每个缺失的有浏览器版本的节点本地模块重复这个过程。

最新更新