Якщо ви розглядаєте Етер (ETH) порівняно з іншими криптовалютами, варто відвести хвилину, щоб зрозуміти Ethereum з технічної точки зору. Протокол блокчейну, відомий своєю набором інструментів, смарт-контрактами та код-орієнтованим екосистемою, Ethereum сильно покладається на ethers.js — бібліотеку Javascript — для надання своєму розробницькому підходу необхідної потужності.
Хоча ethers.js не є єдинією нативною бібліотекою JavaScript для Ethereum, вона є кращим варіантом для менших DApps. У цьому посібнику ми глибше розглянемо аспекти ethers.js, що допоможе вам зрозуміти цей технічний концепт.
У цьому посібнику:
ethers.js - це бібліотека JavaScript - набір наперед написаного коду, який автоматизує кілька функцій. Використання JavaScript-бібліотек для розробки може мінімізувати зусилля при написанні коду. Процес стає більш користувацьким, а для розробників DApp ці бібліотеки допомагають надавати базові функціональні можливості блокчейну у вигляді пакетів.
Ethers.js та цикл розробки: BeInCrypto
Ось GitHubрепозиторійдля бібліотеки.
Перш ніж ми заглибимося глибше в ethers.js, давайте уважніше розглянемо бібліотеки JavaScript. Ці бібліотеки - це наперед написані набори коду JavaScript, які можуть автоматизувати певні загальні завдання. Використання бібліотек, таких як ethers.js, може прискорити процес створення DApp і навіть прискорити інші взаємодії, специфічні для блокчейну.
Ethereum перетворився на децентралізовану платформу для розробки програмного забезпечення. З смарт-контрактидоDeВід додатків Fi до DApps, кодування є невід'ємною частиною екосистеми Ethereum. Саме тому існують спеціальні бібліотеки JavaScript, призначені для Ethereum, такі як ethers.js. Використовуючи ці бібліотеки, розробники можуть підключатися до мережі, розгортати та взаємодіяти з смарт-контрактами, а також легко керувати блокчейн дані.
Чи ви знали? Ethers.js - не єдину відому бібліотеку Ethereum на Javascript. Ще одна відома - Web3.js, заснована Фондом Ethereum. Web3.js відома своєю великою колекцією документації і призначена для більш складних DApps.
Як вже зазначалося, ethers.js спрямований на розробників, які взаємодіють з блокчейном Ethereum. Щодо важливості ця бібліотека, розроблена Річардом Муром і позиціонована під назвою "Ethers", корисна для наступних завдань:
Етер.js екосистема та ролі, які вона може виконувати: BeInCrypto
Ось швидкий приклад фрагмента коду, що використовується для отримання поточного балансу рахунку Ethereum. Давайте спочатку прочитаємо код і зрозуміємо, як ethers.js полегшує життя:
const { ethers } = require(‘ethers’);
// Підключитися до мережі Ethereum
const provider = new ethers.providers.JsonRpcProvider(‘https://mainnet.infura.io/v3/YOUR_INFURA_API_KEY’);
// Вкажіть адресу облікового запису
const accountAddress = ‘0xABC123…’;
// Отримати та відобразити баланс
provider.getBalance(accountAddress).then((balance) => {
// Перетворити баланс з вей у етерconst balanceInEther = ethers.utils.formatEther(balance);console.log(`Баланс: ${balanceInEther} ETH`);
});
У цьому прикладі ви можете чітко побачити, як команда — ethers.providers.JsonRpcProvider — викликає кінцеву точку Infura, а getBalance отримує баланс. Вам не потрібно працювати безпосередньо з JSON RPC Ethereum або віддаленим викликом процедури. У цьому випадку ви можете розглядати ethers.js як перекладача, який робить Ethereum легшим і зрозумілішим для вас.
Досі не впевнений у значущості ethers.js? Ось швидка аналогія.
Припустіть, що ethers.js - це стара бібліотечна картка. Пам'ятаєте, що на цих картках були каталоги, які дозволяли вам знайти потрібну книгу, знаходячи прохід і потім номер полиці? Це те, на що спрямовано ethers.js. Він спрощує і організовує величезні можливості Ethereum, дозволяючи розробникам знайти саме те, що їм потрібно.
Протягом років з'явилося кілька версій Ethers.js, кожна з яких вводить нову функцію або виправлення помилок. Крім того, версіювання відповідає стандартній семантиці, такі як v1.2.3, де перше число позначає основну, а друге і третє числа позначають дрібну та патч. Наразі ми розглянемо тільки оновлення основних версій - зміни, які можуть не бути сумісними з попередніми.
Архітектура та компоненти Ethers.js: BeInCrypto
Ви можете знайти більше деталей про кожну версію, переглянувши Ethers.js’оригінальна документація.
“Ethers.js блищить з превосхідною взаємодією з блокчейном, підтримкою TypeScript та передовими засобами налагодження. Це компактна бібліотека, яка безшовно інтегрується в популярні фреймворки, такі як React, Vue, Angular та інші.”
Redbelly Intern, Builder: X
Перш ніж ви плануєте використовувати потенціал ethers.js, важливо знати, на якому етапі розробки DApp або смарт-контракту він викликається. Ось швидке розбиття для тих, хто потребує знати і розуміти ці елементи з нуля.
Web3.js є дружелюбним для початківців та більш стислим, ніж ethers.js.
Ethers.js, з іншого боку, надає більше варіантів і є новим; воно трохи складніше, ніж Web3.js.
degenBRo, розробник блокчейну та засновник Solidity Finance: Як розповів BeInCrypto
Для початку вам спочатку потрібно відкрити комп'ютер та налаштувати середовище розробки. Це включає в себе Node.js та Інтегроване середовище розробки. Зверніть увагу, що JavaScript зазвичай працює в браузері, але за допомогою Node.js це можна запустити на комп'ютері. Це середовище виконання Node.js, яке встановлює бібліотеки Javascript, такі як ethers.js.
Щодо IDE, яку потрібно розробнику програмного забезпечення для тестування, ви можете врахувати VS Code, Sublime Text або що-небудь інше.
Наступним кроком є встановлення Етерс, бібліотеки, яка господарює ethers.js.
npm install ethers
Потім вам потрібно використовувати Етери, щоб підключитися до Гаманець Ethereum, оскільки взаємодія з блокчейном вимагатиме цього кроку для перевірки облікових даних. Ви можете використовувати встановлену бібліотеку Етер для цього. Ось приклад команди:
14 хв 15 березня 2024 року 3 дні тому
25 хвилин 15 березня 2024 року 2 дні тому
const { ethers } = require(‘ethers’);
// Підключіться до MetaMaskгаманець
const provider = new ethers.providers.Web3Provider(window.ethereum);
Після завершення ви можете використовувати Інтегровану середовище розробки для написання коду на мові Solidity та створення смарт-контрактів для DApps. Ethers.js буде використаний для розгортання того ж самого. Ви навіть можете тестувати DApp або контракт локально, використовуючи середовища, такі як Truffleі Hardhat. Потім ви розгортаєте контракти на мережі Ethereum, для чого потрібен ethers.js.
const contract = новий фабричний контракт(abi, байткод, підписник);
const deployedContract = await contract.deploy();
Для тих, хто не в курсі, ABI, байткод, підписник - це необхідні терміни для безшовного розвитку смарт-контрактів. ABI або бінарний інтерфейс додатка - це скоріше як мітка, яка допомагає мережі впізнати ваші смарт-контракти. Байткод - це скомпільована або, можна сказати, готова до мережі версія смарт-контракту, а підписник - це сутність, яка генерує підпис.
Після розгортання смарт-контракту вам потрібно побудувати фронтенд або користувацький інтерфейс DApp. Для цього ви можете використовувати Angular або React. Ви навіть можете інтегрувати Ethers.js у фронтенд, щоб забезпечити його можливість взаємодії з смарт-контрактами Ethereum. Ось зразок коду для цього:
const provider = new ethers.providers.Web3Provider(window.ethereum);
const контракт = new ethers.Contract(contractAddress, contractABI, provider.getSigner());
Після цього вам потрібно протестувати DApp на тестовій мережі, скажімо, на Rinkeby або Ropsten. Якщо ви задоволені, ви можете запустити DApp на mainnet. Зверніть увагу, скільки разів під час процесу вам потрібно взаємодіяти з Етерами або ethers.js.
Ethers.js виглядає як повноцінна бібліотека Ethereum. Ось деякі ексклюзивні пропозиції, які можуть полегшити життя розробників:
Постачальники Ethers.js виступають як мости між мережею Ethereum та DApp, над яким ви працюєте. Це включає в себе спрощення запитів даних блокчейну та також допомагає у трансляції транзакцій. Infura - один з постачальників, який використовує Ethers.js.
Ось зразок коду для того ж самого:
const { ethers } = require(‘ethers’);
// Підключення за допомогою Infura
const provider = новий постачальник JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
// Перевірте поточний номер блоку
provider.getBlockNumber().then((blockNumber) => {
console.log(“Поточний номер блоку:”, blockNumber);
});
Ethers.js дозволяє вам керувати гаманцями, дозволяючи створювати нові облікові записи, імпортувати існуючі облікові записи, безпечно керувати приватними ключами для підпису транзакцій та робити більше.
Цей компонент існування Ethers.js підтримує створення об'єктів. Це полегшує виклик конкретних функцій контракту, більше схоже на вбудовані методи Javascript.
Ethers.js та взаємодія зі смарт-контрактами: BeInCrypto
Ethers.js може розгадати імена ENS на їхні адреси Ethereum, а також навпаки. Ця функція зменшує ризик помилок.
Ось фрагмент коду для цього прикладу:
const { ethers } = require('ethers');
const provider = new ethers.providers.JsonRpcProvider(‘https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
const ensName = ‘Аліса.eth’;
provider.resolveName(ensName).then((address) => {
console.log(`${ensName} розглянуто до ${address}`);
});
Крім згаданих функцій, Ethers.js також має наступні аспекти або функції, які допомагають розробникам отримати прямий доступ до Ethereum.
Декілька переваг використання Ethers.js:
Засоби масової інформації, такі як BeInCrypto, можуть використовувати Ethers.js для створення передових та корисних веб-інструментів web3 з нуля. Таким чином, стає можливим використання функцій, які працюють на блокчейні або, точніше, на Ethereum, для покращення його користування. Ось варіанти, які можна розглянути:
Можна використовувати функції Ethers.js для інтеграції фактичних поточних даних криптовалют, таких як статистика мережі, комісія за газ, і більше, щоб мати статті та ресурси завжди актуальними. Ось приклад коду для отримання останнього номера блоку, скажімо, для Біткоїна, щоб в реальному часі відстежувати зменшення нагороди за блок.
const { ethers } = require(‘ethers’);
const provider = new ethers.providers.JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
provider.getBlockNumber().then((blockNumber) => {
console.log(“Поточний номер блоку:”, blockNumber);// Інтегруйте ці дані у свою платформу публікацій для отримання поточних даних
});
Публікації можуть створювати фрагменти інтерактивного контенту, що дозволяє користувачам взаємодіяти безпосередньо з розумними контрактами, брати участь у голосуваннях або навіть грати у невеликі ігри, якщо потрібно.
Ось фрагмент коду-зразка для отримання вітання з певного досягнення від смарт-контракту:
const { ethers } = потрібно(‘ethers’);
const provider = new ethers.providers.Web3Provider(window.ethereum);
const contractAddress = ‘0x…’;
const contractABI = [
“функція getGreeting() перегляд повертає (рядок)”
];
const contract = new ethers.Contract(contractAddress, contractABI, provider);
асинхронна функція відображення привітання() {
const greeting = await contract.getGreeting();document.getElementById(‘greeting’).innerText = greeting;
}
Відкрийте рахунок на KuCoin & отримайте гарантований бонус до 700 USDT.
Реальний приклад того, як використовується Ethers.js:
ЗМІ також можуть врахувати децентралізоване видавництво, де залишок статті публікується в мережі блокчейн. Це може допомогти у боротьбі з цензурою і навіть збереженням цілісності контенту.
Ось приклад коду, де хеш статті зберігається в Інтернеті як доказ публікації:
const { ethers } = require('ethers');
const гаманець = новий етер.Гаманець(‘ВАШ_ПРИВАТНИЙ_КЛЮЧ’, провайдер);
const contentHash = ethers.utils.id(“Зміст статті тут”);
const tx = await гаманець.відправитиТранзакцію({
to: ‘0xАдресаКонтрактаДляЗберігання’, дані: contentHash // Припускаючи, що контракт приймає та зберігає ці дані
});
console.log(«Хеш транзакції (доказ публікації):», tx.hash);
Це лише кілька випадків використання для медіа-публікацій. Але існують інші сектори, які можуть використовувати потужність ethers.js. Серед них:
І більше.
Крім того, це корисно вDeFi, NFT та ігрові проекти, є кілька існуючих Додатків, які підтримують використання Ethers.js. До них входять наступні:
Розбиваючи кілька міфів Ether.js:
Використання Ethers.js поставляється з доволі обширним наборомбезпекарозгляд. Ось кілька, які слід дотримуватися:
Ось приклад того, як це працює:
// Псевдокод для пакування викликів контракту за допомогою Ethers.js (концептуальний приклад)
const contract = new ethers.Contract(address, abi, provider);
const [value1, value2, value3] = await Promise.all([
contract.viewFunction1(),contract.viewFunction2(),contract.viewFunction3()
]);
Спонсоровано
Як показано в цьому посібнику, Ethers.js є універсальним інструментом. Хоча ми швидко розглянули його можливості, найкращим способом повністю зрозуміти Ethers.js є поглиблення в світ смарт-контрактів, JavaScript, IDEs, DApps та інше. Крім того, корисним може бути також приєднання до спільнот Ethereum та Ethers.
Як розробники можуть використовувати події Ethers.js?
Які основні корисні функції пропонує Ethers.js?
Який зв'язок між Ethers.js та Web3.js?
Якщо ви розглядаєте Етер (ETH) порівняно з іншими криптовалютами, варто відвести хвилину, щоб зрозуміти Ethereum з технічної точки зору. Протокол блокчейну, відомий своєю набором інструментів, смарт-контрактами та код-орієнтованим екосистемою, Ethereum сильно покладається на ethers.js — бібліотеку Javascript — для надання своєму розробницькому підходу необхідної потужності.
Хоча ethers.js не є єдинією нативною бібліотекою JavaScript для Ethereum, вона є кращим варіантом для менших DApps. У цьому посібнику ми глибше розглянемо аспекти ethers.js, що допоможе вам зрозуміти цей технічний концепт.
У цьому посібнику:
ethers.js - це бібліотека JavaScript - набір наперед написаного коду, який автоматизує кілька функцій. Використання JavaScript-бібліотек для розробки може мінімізувати зусилля при написанні коду. Процес стає більш користувацьким, а для розробників DApp ці бібліотеки допомагають надавати базові функціональні можливості блокчейну у вигляді пакетів.
Ethers.js та цикл розробки: BeInCrypto
Ось GitHubрепозиторійдля бібліотеки.
Перш ніж ми заглибимося глибше в ethers.js, давайте уважніше розглянемо бібліотеки JavaScript. Ці бібліотеки - це наперед написані набори коду JavaScript, які можуть автоматизувати певні загальні завдання. Використання бібліотек, таких як ethers.js, може прискорити процес створення DApp і навіть прискорити інші взаємодії, специфічні для блокчейну.
Ethereum перетворився на децентралізовану платформу для розробки програмного забезпечення. З смарт-контрактидоDeВід додатків Fi до DApps, кодування є невід'ємною частиною екосистеми Ethereum. Саме тому існують спеціальні бібліотеки JavaScript, призначені для Ethereum, такі як ethers.js. Використовуючи ці бібліотеки, розробники можуть підключатися до мережі, розгортати та взаємодіяти з смарт-контрактами, а також легко керувати блокчейн дані.
Чи ви знали? Ethers.js - не єдину відому бібліотеку Ethereum на Javascript. Ще одна відома - Web3.js, заснована Фондом Ethereum. Web3.js відома своєю великою колекцією документації і призначена для більш складних DApps.
Як вже зазначалося, ethers.js спрямований на розробників, які взаємодіють з блокчейном Ethereum. Щодо важливості ця бібліотека, розроблена Річардом Муром і позиціонована під назвою "Ethers", корисна для наступних завдань:
Етер.js екосистема та ролі, які вона може виконувати: BeInCrypto
Ось швидкий приклад фрагмента коду, що використовується для отримання поточного балансу рахунку Ethereum. Давайте спочатку прочитаємо код і зрозуміємо, як ethers.js полегшує життя:
const { ethers } = require(‘ethers’);
// Підключитися до мережі Ethereum
const provider = new ethers.providers.JsonRpcProvider(‘https://mainnet.infura.io/v3/YOUR_INFURA_API_KEY’);
// Вкажіть адресу облікового запису
const accountAddress = ‘0xABC123…’;
// Отримати та відобразити баланс
provider.getBalance(accountAddress).then((balance) => {
// Перетворити баланс з вей у етерconst balanceInEther = ethers.utils.formatEther(balance);console.log(`Баланс: ${balanceInEther} ETH`);
});
У цьому прикладі ви можете чітко побачити, як команда — ethers.providers.JsonRpcProvider — викликає кінцеву точку Infura, а getBalance отримує баланс. Вам не потрібно працювати безпосередньо з JSON RPC Ethereum або віддаленим викликом процедури. У цьому випадку ви можете розглядати ethers.js як перекладача, який робить Ethereum легшим і зрозумілішим для вас.
Досі не впевнений у значущості ethers.js? Ось швидка аналогія.
Припустіть, що ethers.js - це стара бібліотечна картка. Пам'ятаєте, що на цих картках були каталоги, які дозволяли вам знайти потрібну книгу, знаходячи прохід і потім номер полиці? Це те, на що спрямовано ethers.js. Він спрощує і організовує величезні можливості Ethereum, дозволяючи розробникам знайти саме те, що їм потрібно.
Протягом років з'явилося кілька версій Ethers.js, кожна з яких вводить нову функцію або виправлення помилок. Крім того, версіювання відповідає стандартній семантиці, такі як v1.2.3, де перше число позначає основну, а друге і третє числа позначають дрібну та патч. Наразі ми розглянемо тільки оновлення основних версій - зміни, які можуть не бути сумісними з попередніми.
Архітектура та компоненти Ethers.js: BeInCrypto
Ви можете знайти більше деталей про кожну версію, переглянувши Ethers.js’оригінальна документація.
“Ethers.js блищить з превосхідною взаємодією з блокчейном, підтримкою TypeScript та передовими засобами налагодження. Це компактна бібліотека, яка безшовно інтегрується в популярні фреймворки, такі як React, Vue, Angular та інші.”
Redbelly Intern, Builder: X
Перш ніж ви плануєте використовувати потенціал ethers.js, важливо знати, на якому етапі розробки DApp або смарт-контракту він викликається. Ось швидке розбиття для тих, хто потребує знати і розуміти ці елементи з нуля.
Web3.js є дружелюбним для початківців та більш стислим, ніж ethers.js.
Ethers.js, з іншого боку, надає більше варіантів і є новим; воно трохи складніше, ніж Web3.js.
degenBRo, розробник блокчейну та засновник Solidity Finance: Як розповів BeInCrypto
Для початку вам спочатку потрібно відкрити комп'ютер та налаштувати середовище розробки. Це включає в себе Node.js та Інтегроване середовище розробки. Зверніть увагу, що JavaScript зазвичай працює в браузері, але за допомогою Node.js це можна запустити на комп'ютері. Це середовище виконання Node.js, яке встановлює бібліотеки Javascript, такі як ethers.js.
Щодо IDE, яку потрібно розробнику програмного забезпечення для тестування, ви можете врахувати VS Code, Sublime Text або що-небудь інше.
Наступним кроком є встановлення Етерс, бібліотеки, яка господарює ethers.js.
npm install ethers
Потім вам потрібно використовувати Етери, щоб підключитися до Гаманець Ethereum, оскільки взаємодія з блокчейном вимагатиме цього кроку для перевірки облікових даних. Ви можете використовувати встановлену бібліотеку Етер для цього. Ось приклад команди:
14 хв 15 березня 2024 року 3 дні тому
25 хвилин 15 березня 2024 року 2 дні тому
const { ethers } = require(‘ethers’);
// Підключіться до MetaMaskгаманець
const provider = new ethers.providers.Web3Provider(window.ethereum);
Після завершення ви можете використовувати Інтегровану середовище розробки для написання коду на мові Solidity та створення смарт-контрактів для DApps. Ethers.js буде використаний для розгортання того ж самого. Ви навіть можете тестувати DApp або контракт локально, використовуючи середовища, такі як Truffleі Hardhat. Потім ви розгортаєте контракти на мережі Ethereum, для чого потрібен ethers.js.
const contract = новий фабричний контракт(abi, байткод, підписник);
const deployedContract = await contract.deploy();
Для тих, хто не в курсі, ABI, байткод, підписник - це необхідні терміни для безшовного розвитку смарт-контрактів. ABI або бінарний інтерфейс додатка - це скоріше як мітка, яка допомагає мережі впізнати ваші смарт-контракти. Байткод - це скомпільована або, можна сказати, готова до мережі версія смарт-контракту, а підписник - це сутність, яка генерує підпис.
Після розгортання смарт-контракту вам потрібно побудувати фронтенд або користувацький інтерфейс DApp. Для цього ви можете використовувати Angular або React. Ви навіть можете інтегрувати Ethers.js у фронтенд, щоб забезпечити його можливість взаємодії з смарт-контрактами Ethereum. Ось зразок коду для цього:
const provider = new ethers.providers.Web3Provider(window.ethereum);
const контракт = new ethers.Contract(contractAddress, contractABI, provider.getSigner());
Після цього вам потрібно протестувати DApp на тестовій мережі, скажімо, на Rinkeby або Ropsten. Якщо ви задоволені, ви можете запустити DApp на mainnet. Зверніть увагу, скільки разів під час процесу вам потрібно взаємодіяти з Етерами або ethers.js.
Ethers.js виглядає як повноцінна бібліотека Ethereum. Ось деякі ексклюзивні пропозиції, які можуть полегшити життя розробників:
Постачальники Ethers.js виступають як мости між мережею Ethereum та DApp, над яким ви працюєте. Це включає в себе спрощення запитів даних блокчейну та також допомагає у трансляції транзакцій. Infura - один з постачальників, який використовує Ethers.js.
Ось зразок коду для того ж самого:
const { ethers } = require(‘ethers’);
// Підключення за допомогою Infura
const provider = новий постачальник JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
// Перевірте поточний номер блоку
provider.getBlockNumber().then((blockNumber) => {
console.log(“Поточний номер блоку:”, blockNumber);
});
Ethers.js дозволяє вам керувати гаманцями, дозволяючи створювати нові облікові записи, імпортувати існуючі облікові записи, безпечно керувати приватними ключами для підпису транзакцій та робити більше.
Цей компонент існування Ethers.js підтримує створення об'єктів. Це полегшує виклик конкретних функцій контракту, більше схоже на вбудовані методи Javascript.
Ethers.js та взаємодія зі смарт-контрактами: BeInCrypto
Ethers.js може розгадати імена ENS на їхні адреси Ethereum, а також навпаки. Ця функція зменшує ризик помилок.
Ось фрагмент коду для цього прикладу:
const { ethers } = require('ethers');
const provider = new ethers.providers.JsonRpcProvider(‘https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
const ensName = ‘Аліса.eth’;
provider.resolveName(ensName).then((address) => {
console.log(`${ensName} розглянуто до ${address}`);
});
Крім згаданих функцій, Ethers.js також має наступні аспекти або функції, які допомагають розробникам отримати прямий доступ до Ethereum.
Декілька переваг використання Ethers.js:
Засоби масової інформації, такі як BeInCrypto, можуть використовувати Ethers.js для створення передових та корисних веб-інструментів web3 з нуля. Таким чином, стає можливим використання функцій, які працюють на блокчейні або, точніше, на Ethereum, для покращення його користування. Ось варіанти, які можна розглянути:
Можна використовувати функції Ethers.js для інтеграції фактичних поточних даних криптовалют, таких як статистика мережі, комісія за газ, і більше, щоб мати статті та ресурси завжди актуальними. Ось приклад коду для отримання останнього номера блоку, скажімо, для Біткоїна, щоб в реальному часі відстежувати зменшення нагороди за блок.
const { ethers } = require(‘ethers’);
const provider = new ethers.providers.JsonRpcProvider('https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID’);
provider.getBlockNumber().then((blockNumber) => {
console.log(“Поточний номер блоку:”, blockNumber);// Інтегруйте ці дані у свою платформу публікацій для отримання поточних даних
});
Публікації можуть створювати фрагменти інтерактивного контенту, що дозволяє користувачам взаємодіяти безпосередньо з розумними контрактами, брати участь у голосуваннях або навіть грати у невеликі ігри, якщо потрібно.
Ось фрагмент коду-зразка для отримання вітання з певного досягнення від смарт-контракту:
const { ethers } = потрібно(‘ethers’);
const provider = new ethers.providers.Web3Provider(window.ethereum);
const contractAddress = ‘0x…’;
const contractABI = [
“функція getGreeting() перегляд повертає (рядок)”
];
const contract = new ethers.Contract(contractAddress, contractABI, provider);
асинхронна функція відображення привітання() {
const greeting = await contract.getGreeting();document.getElementById(‘greeting’).innerText = greeting;
}
Відкрийте рахунок на KuCoin & отримайте гарантований бонус до 700 USDT.
Реальний приклад того, як використовується Ethers.js:
ЗМІ також можуть врахувати децентралізоване видавництво, де залишок статті публікується в мережі блокчейн. Це може допомогти у боротьбі з цензурою і навіть збереженням цілісності контенту.
Ось приклад коду, де хеш статті зберігається в Інтернеті як доказ публікації:
const { ethers } = require('ethers');
const гаманець = новий етер.Гаманець(‘ВАШ_ПРИВАТНИЙ_КЛЮЧ’, провайдер);
const contentHash = ethers.utils.id(“Зміст статті тут”);
const tx = await гаманець.відправитиТранзакцію({
to: ‘0xАдресаКонтрактаДляЗберігання’, дані: contentHash // Припускаючи, що контракт приймає та зберігає ці дані
});
console.log(«Хеш транзакції (доказ публікації):», tx.hash);
Це лише кілька випадків використання для медіа-публікацій. Але існують інші сектори, які можуть використовувати потужність ethers.js. Серед них:
І більше.
Крім того, це корисно вDeFi, NFT та ігрові проекти, є кілька існуючих Додатків, які підтримують використання Ethers.js. До них входять наступні:
Розбиваючи кілька міфів Ether.js:
Використання Ethers.js поставляється з доволі обширним наборомбезпекарозгляд. Ось кілька, які слід дотримуватися:
Ось приклад того, як це працює:
// Псевдокод для пакування викликів контракту за допомогою Ethers.js (концептуальний приклад)
const contract = new ethers.Contract(address, abi, provider);
const [value1, value2, value3] = await Promise.all([
contract.viewFunction1(),contract.viewFunction2(),contract.viewFunction3()
]);
Спонсоровано
Як показано в цьому посібнику, Ethers.js є універсальним інструментом. Хоча ми швидко розглянули його можливості, найкращим способом повністю зрозуміти Ethers.js є поглиблення в світ смарт-контрактів, JavaScript, IDEs, DApps та інше. Крім того, корисним може бути також приєднання до спільнот Ethereum та Ethers.
Як розробники можуть використовувати події Ethers.js?
Які основні корисні функції пропонує Ethers.js?
Який зв'язок між Ethers.js та Web3.js?