A implantação do contrato Era atualmente só pode ser realizada através da linha de comando, o que é um pouco complicado.
Depois de alguma exploração, eu estava basicamente familiarizado com a situação. Aqui, ajudaremos você a resolver o processo completo de implantação e verificação e tomaremos a implantação do contrato mais simples como exemplo para facilitar o início de todos.
etapa:
1. Preparação do ambiente
2. Preparação do código do contrato
3. Implantar contrato de verificação

Conjunto ambiental de três peças
Consulte a documentação oficial da Era para instalar o conjunto de ambiente de três peças:
O ambiente de computador de todos para Node, NVM e Yarn é complexo. Se você encontrar um erro, você mesmo pode pesquisar no Google ou fazer perguntas ao ChatGPT:
https://era.zksync.io/docs/dev/building-on-zksync/hello-world.html#prerequisites
Inicialização e instalação do SDK
Continue consultando a documentação oficial e proceda da seguinte forma:
1. Crie uma nova pasta exclusiva (comando mk & cd)
2. Inicialize o ambiente (comando Yarn init -y)
3. Instale o SDK e as dependências (comando Yarn Add)

arquivo de configuração de configuração
Crie o arquivo hardhat.config.ts no diretório atual. O código que utilizo é o seguinte (você pode copiá-lo completamente no ALT da imagem) Observação: pode ser necessário instalar o pacote zksolc mais uma vez (é assim). Resolvi o erro ao compilar). Se você modificar a versão do zksolc, como mudar para a versão oficial recomendada 1.3.10, também será baixado automaticamente uma vez.
Aqui você precisa do seu ambiente de linha de comando para poder acessar a rede externa normalmente! Por exemplo, ative o “modo avançado” do Surge

Contrato inteligente minimalista
P: Qual é a aparência do contrato inteligente mais simples?
Resposta: Um contrato que contém apenas o nome do contrato e nada mais. Por exemplo, o contrato na captura de tela define apenas a versão e o nome do contrato, mas é de fato um contrato inteligente legal (você pode copiar o código da imagem ALT).
Três etapas:
1. Crie uma nova pasta de contrato (implantação de contratos mkdir)
2. Edite o arquivo do contrato (mini.sol)
3. Compile o contrato

Compilar contrato
Em teoria, a compilação deveria ser muito simples, exigindo apenas um comando para fazer uma captura de tela. Mas, na verdade, a probabilidade de reportar erros aqui é extremamente alta.
Se um erro for relatado, você pode verificar os dois locais a seguir:
1. Se o ambiente de linha de comando pode acessar a rede externa (método de detecção: curl http://google.com)
2. Reinstale o zksolc e tente novamente (https://twitter.com/gm365/status/1644303144518848512…)
Se tudo correr bem, a compilação foi bem-sucedida conforme mostrado na figura.





Implantar contrato
Existem duas etapas para implantar um contrato:
1. Crie o arquivo deploy/deploy.ts e modifique-o
2. O comando `yarn hardhat deploy-zksync` implanta o contrato
Modifiquei o arquivo deploy.ts, você pode copiar o código do ALT. Observe os dois locais marcados com ❗️ na imagem, que você precisa modificar de acordo com a situação.
1. Implante a chave privada da carteira EOA do contrato.
2. O nome do contrato que você definiu na etapa anterior (WTF aqui).
Execute o comando de implantação. Se tudo correr bem, você verá o endereço do contrato após a implantação bem-sucedida em cerca de dez segundos.


Verifique o código-fonte do contrato
Após a conclusão da implantação, você também pode optar por abrir o código-fonte do seu código de contrato, verificando-o no navegador blockchain.
Depois de encontrar o endereço do seu contrato:
1. Versão Zksolc: Aqui está 1.3.5 (selecione de acordo com suas configurações reais)
2. Versão Solc: Esta é 0.8.17 (item de configuração no arquivo hardhat.config.ts)
3. Nome do contrato (WTF aqui)
4. Código do contrato (copiar e colar)

Resumir
Se tudo correr bem, parabéns por concluir a implantação do seu primeiro contrato inteligente na cadeia Era.
Depois de aprender essa habilidade básica, será fácil implantar contratos mais complexos no futuro.
Como escrevemos o contrato mais simples, o custo de implantação desse contrato também é extremamente baixo (gastei US$ 0,21 no teste aqui).
Além disso, aqui estão alguns recursos que podem ser úteis:
1. Documentação oficial: https://era.zksync.io/docs/dev/building-on-zksync/hello-world.html…
2. Tutorial de terceiros: https://mirror.xyz/catpad.eth/X8lq1Qci1qjyW6Fo-e64xJfY-LJZkScGD66AD4vcHmI…
3. Uma introdução à implantação do contrato Era que escrevi antes: https://twitter.com/gm365/status/1644299731236171778…
digressão
zkSync não é totalmente compatível com EVM e seus diferentes mecanismos para implantação de contratos tornam impossível usar Remix e outros métodos para operar diretamente o contrato de implantação na página da web (o ThirdWeb também não consegue concluir a implantação no momento, embora seja mostrado no site que pode ser implantado no Era através de seu contrato modelo, mas na verdade não é possível, eles só admitiram em DC).
Espero que a equipe zkSync continue trabalhando duro para facilitar a implantação de contratos no futuro.