otras dependencias
nodo.js,
Dado que se realiza con npm, configure primero la fuente del espejo doméstico. buscar en línea
1. Instalar trufa
npm install truffle -g
truffle --version
安装完其他项目依赖,能够产生一下效果
2. Creación de proyectos
创建test文件夹
mkdir test
进入test
cd test
初始化项目
truffle init
contratos : Carpeta para escribir y almacenar contratos inteligentes
migraciones : use solidez para escribir la carpeta de contratos inteligentes y escriba archivos para explicar cómo truffle implementa contratos inteligentes, usando node.js
test : se usa para escribir archivos de prueba, la mayoría de ellos usan node.js y algunos usan Solidity
truffle-config.js : el archivo de configuración se usa para definir la red para la implementación de contratos inteligentes
3. Editar contrato
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <=0.9.0; //请注意solidity的版本问题,如果合约指定的版本和当前Solidity不兼容的话,这将会在编译的时候出错
contract Test {
uint data;
function updateData(uint _data) external {
data = _data;
}
function readData() external view returns (uint) {
return data;
}
}
4. Compilar el contrato
5. Implementar el contrato
Ganache se puede instalar de forma independiente, pero cuando se instala truffle, también se instalará automáticamente, y los contratos inteligentes escritos y probados se pueden implementar en la cadena privada o en la red de prueba de Ethereum.
1. Escriba el archivo de migración test_deploy.js
const Test = artifacts.require("Test");
module.exports = function (deployer) {
deployer.deploy(Test);
};
2. Edite el archivo truffle-config.js
Esto corresponde a la configuración de Ganache.
3. Implementar el contrato
truffle migrate
6. Pruebas de contrato
recompilará e implementará
const Test = artifacts.require('Test');
contract('Test', () => {
it('Should update data', async () => {
const newTest = await Test.new();
await newTest.updateData(10);
const data = await newTest.readData();
assert(data.toString() === '10',"failed!");
});
});