Краткий обзор
После работы с кодом в этом посте вы должны знать, как:
- передать простые аргументы -
Int
,Strin
g и т. д. - передавать сложные аргументы -
Arrays
иDictionaries
- передавать сложные структуры - массивы словарей и т.п. 💡 Учиться лучше с видео? К счастью для вас, есть видео, которому вы можете следовать вместе с этим руководством. Рассказывает один-единственный защитник разработчиков Flow Кимкодашян !
Kimazing Контент
https://youtu.be/DWz8Plv5n3k
Что такое FCL?
Клиентская библиотека Flow (FCL) — это стандартизированный набор шаблонов связи между кошельками, приложениями и пользователями, который используется для выполнения самых разных действий вашего децентрализованного приложения. Различные языки имеют свои собственные реализации концепции и стандарта FCL.
Что касается Javascript, это пакет NPM, используемый для взаимодействия с пользовательскими кошельками и блокчейном Flow как в браузерной, так и в серверной среде.
Подождите, что такое блокчейн Flow?
Хорошо, что вы спросили! Flow — это блокчейн, созданный для следующего поколения приложений, игр и цифровых активов, на которых они основаны.
Существует множество различных функций, которые делают Flow уникальным. Вот некоторые из них:
- Cadence — новый простой в освоении ресурсно-ориентированный язык программирования, разработанный для dApps и цифровых активов.
- Обновляемые смарт-контракты . Безопасное и прозрачное исправление ошибок и обновление заранее определенных частей смарт-контракта.
- Быстрая и детерминированная завершенность — Flow построен так, чтобы быть быстрым и отзывчивым — достижение глобальной окончательности в течение нескольких секунд
Дополнительную информацию о Flow Blockchain можно найти на https://flow.com и https://docs.onflow.org/.
Простой пример
В следующих постах мы продемонстрируем более сложные и значимые примеры, а пока давайте попробуем заставить Flow Testnet возвращать нам конкретное число (пожалуйста, потерпите, дальше будет гораздо интереснее 😄)
Мы будем использовать платформу Codesandbox (https://codesandbox.io), чтобы было проще поделиться окончательным решением, в то же время позволяя вам форкнуть Sandbox и попробовать свои собственные идеи.
Шаг 1 - Установка
Добавить "@onflow/fcl": "1.0.0"
как свою зависимость
Шаг 2 — Импорт
FCL JS предоставляет несколько методов из пакета — для «создания» взаимодействий, настройки FCL, взаимодействия с сетью и т. д. Мы импортируем:
-
query
( https://docs.onflow.org/fcl/reference/api/#query) -
config
(https://docs.onflow.org/fcl/reference/api/#common-configuration-keys ) методы
import { query, config } from "@onflow/fcl";
Шаг 3. Настройка FCL
FCL необходимо знать, куда отправить этот сценарий для выполнения. Следующая строка установит конечную точку узла доступа с помощью config
метода:
const api = "https://rest-testnet.onflow.org"
config().put("accessNode.api", api);
Шаг 4. Выполните скрипт в тестовой сети.
Чтобы выполнить скрипт Cadence на блокчейне Flow, мы можем отправить его с помощью query
метода. Наш базовый случай не использует никаких аргументов, поэтому мы будем передавать только одно поле в этом аргументе:
const cadence = `
pub fun main(): Int{
return 42
}
`;
const theAnswer = await query({ cadence });
console.log({ theAnswer });
Наконец - полный код
import { query, config } from "@onflow/fcl";
const api = "https://rest-testnet.onflow.org"
config().put("accessNode.api", api);
// We will use IIFE to execute our code right away
(async () => {
console.clear();
const cadence = `
pub fun main(): Int{
return 42
}
`;
const theAnswer = await query({ cadence });
console.log({ theAnswer });
})();
В следующем посте мы расскажем, как передавать аргументы в ваши скрипты. Следите за обновлениями! 👋
Полная песочница доступна здесь: Codesandbox | Узнайте FCL - 01. Введение
Ссылка и источники
- Сайт Flow Docs — https://docs.onflow.org/ — более подробная информация о блокчейне Flow и о том, как с ним взаимодействовать.
- Портал Flow — https://flow.com/ — ваша точка входа в Flow
- FCL JS — https://github.com/onflow/fcl-js — Исходный код и возможность внести свой вклад в библиотеку FCL JS
- Cadence — https://docs.onflow.org/cadence/ — Введение в Cadence
- Codesandbox — https://codesandbox.io — потрясающая IDE для браузера, позволяющая быстро создавать прототипы.
Top comments (0)