将部署的合同地址设置为前端配置的最佳方式

Best way to setup a deployed contract address to the frontend config

我正在使用 truffle 和 ganache 在本地以太坊实例上部署智能合约。

部署合约后,我复制地址并将 if 粘贴到使用 web3 连接到该智能合约的前端的 javascript 配置。

是否有更好的方法来自动执行此操作,以便每次重新部署合同时我的前端配置都会更新,而不必复制和粘贴地址?

感谢 Zulhilmi 关于使用 truffle exec 的提示,我可以找到更完整的答案。

在 truffle 脚本中,您可以访问一个对象,其中包含有关已部署的智能合约实例的信息。包括它的地址。

那样的话,我可以执行此脚本来获取地址并将其作为构建过程的一部分写入前端配置文件。

var CryptoFreaks = artifacts.require('CryptoFreaks');

module.exports = async function() {
  
  const instance = await CryptoFreaks.deployed(); 
  console.log(instance.address);

  // Write to frontend config file here

};

^ 该脚本需要 运行 确实 truffle exec