如何使用环境变量执行脚本并用松露执行

发布于 2025-01-29 17:11:54 字数 532 浏览 2 评论 0原文

构建哈希

$ truffle develop
truffle(develop)> exec scripts/myScript.js

创建了一个

SIGNER= "56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

require('dotenv').config();
const fs = require("fs");
const readline = require("readline");
const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log('AAA', process.env.SIGNER);

脚本来

AAA未定义

I created a script to build hash so I usually executed that like this:

$ truffle develop
truffle(develop)> exec scripts/myScript.js

but my script now want to read from .env

SIGNER= "56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

this is my script

require('dotenv').config();
const fs = require("fs");
const readline = require("readline");
const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log('AAA', process.env.SIGNER);

I am getting

AAA undefined

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

白首有我共你 2025-02-05 17:11:54

尝试以下尝试:

$ truffle init test-contract
$ cd test-contract
$ npm init -y
$ npm i web3 --save
$ npm i dotenv --save

在您的测试文件夹中创建一个文件并编写(test-contract/test/1.test.js):1.-test.js,

require("dotenv").config();

const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log("AAA", process.env.SIGNER);

然后创建.env文件(test-contarts/.env),然后在没有空间的情况下进行关注:

SIGNER="56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

最后运行(在测试合同文件夹内)

$ truffle test

结果:

Compiling your contracts...
===========================
> Compiling ./contracts/Migrations.sol
> Artifacts written to /tmp/test--11623-Aa2e6hYzLkeX
> Compiled successfully using:
   - solc: 0.8.10+commit.fc410830.Emscripten.clang

AAA 56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6


  0 passing (1ms)

try this :

$ truffle init test-contract
$ cd test-contract
$ npm init -y
$ npm i web3 --save
$ npm i dotenv --save

create a file inside your test folder and write it (test-contract/test/1.test.js) : 1.test.js

require("dotenv").config();

const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log("AAA", process.env.SIGNER);

then create .env file (test-contract/.env) and put following without space :

SIGNER="56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

finally run the (inside the test-contract folder)

$ truffle test

result :

Compiling your contracts...
===========================
> Compiling ./contracts/Migrations.sol
> Artifacts written to /tmp/test--11623-Aa2e6hYzLkeX
> Compiled successfully using:
   - solc: 0.8.10+commit.fc410830.Emscripten.clang

AAA 56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6


  0 passing (1ms)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文