首页 > 解决方案 > 用于 React Native 的 npm 模块

问题描述

我正在尝试在 React Native 应用程序中安装 npm 模块 wallet-address-validator。我正在将 expo 用于我的开发环境。

首先我安装钱包地址验证器

npm 安装钱包地址验证器

然后我跑

世博会开始

我得到了这些错误

Expo Developer Tools 与 Expo CLI 断开连接。使用 expo start 命令再次启动 CLI。

[14:23:00] 在浏览器中打开 DevTools...(按 shift-d 禁用)

[14:23:02] 错误:未安装 React Native。请npm install在您的项目目录中运行。

[14:23:02] 无法启动项目。请修复错误并重新启动项目。

[14:23:02] 在您的环境中设置 EXPO_DEBUG=true 以查看堆栈跟踪。

所以我跑了

npm 安装

然后我跑了

世博会重新开始

我得到这个错误

14:26

重新抓取此手表 1 次,最近一次是因为:/home/dale/Desktop/Rails/TestApps/testApp: dir missing from internal state 要解决,请查看https://facebook.github.io/watchman/docs/上的信息Troubleshooting.html#recrawl要清除此警告,请运行:watchman watch-del /home/dale/Desktop/Rails/TestApps/testApp ; watchman watch-project /home/dale/Desktop/Rails/TestApps/testApp

标签: react-nativenpm

解决方案


1) yarn add wallet-address-validator 2) npm install -g browserify 3) 创建一个文件 wav-in.js 导入 wallet-address-validator 模块并简单地导出它:

var WAValidator = require('wallet-address-validator');
module.exports = WAValidator;

4)然后在项目中的终端中

browserify cwav-in.js -o wav.js

5) 如果您在 App.js 中的 Wallet-Address-validator 中输入下面的测试代码,这将导致错误

var WAValidator = require('wallet-address-validator');

var 有效 = WAValidator.validate('1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck', 'BTC'); if(valid) console.log('这是一个有效的地址'); 否则 console.log('地址无效');

6) 但是,您会收到一条错误消息“……不是函数”</p>

7) 在 wav.js 的第 3837 行更改“var WAValidator = require('wallet-address-validator');” 到“WAValidator = require('wallet-address-validator');”</p>

8) 在 wav.js 的最后一行添加“module.exports = WAValidator;”</p>

现在一切都应该正常工作

这篇文章也很重要 https://hackernoon.com/using-core-node-js-modules-in-react-native-apps-64acd4d07140


推荐阅读