Создаем на Flow | Изучение FCL 1 — Введение
EgorMajj
Posted on August 22, 2022
Краткий обзор
После работы с кодом в этом посте вы должны знать, как:
- передать простые аргументы -
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 для браузера, позволяющая быстро создавать прототипы.
Posted on August 22, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.