Import

# Import

Você pode importar arquivos locais e externos no Solidity.

# Local

Aqui está nossa estrutura da pasta.

├── Import.sol
└── Foo.sol

Foo.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.3;

contract Foo {
    string public name = "Foo";
}

Import.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.3;

// importa Foo.sol do diretório atual
import "./Foo.sol";

contract Import {
    // Inicializa Foo.sol
    Foo public foo = new Foo();

    // Testa Foo.sol obtendo seu nome.
    function getFooName() public view returns (string memory) {
        return foo.name();
    }
}

# External

Você também pode importar de GitHub (opens new window) simplesmente copiando o url

// https://github.com/owner/repo/blob/branch/path/to/Contract.sol
import "https://github.com/owner/repo/blob/branch/path/to/Contract.sol";

// Example import ECDSA.sol from openzeppelin-contract repo, release-v3.3 branch
// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.3/contracts/cryptography/ECDSA.sol
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.3/contracts/cryptography/ECDSA.sol";
Last Updated: 07/10/2022 21:58:58