Uruchom kod
Czynność Uruchom kod polega na wykonaniu kodu JavaScript. Możesz przekazywać dane z poprzednich kroków w workflow jako dane wejściowe do czynności Uruchom kod i zwracać wartości, które mają być używane w kolejnych krokach.
Na tej stronie
Pola
Czynność Uruchom kod zawiera poniższe pola.
Pole | Opis |
---|---|
Dane wejściowe | Wymagane. Zapytanie GraphQL umożliwiające wykorzystanie danych z poprzednich kroków jako danych wejściowych dla czynności Uruchom kod. |
Dane wyjściowe | Wymagane. Reprezentacja danych, które mają zostać zwrócone w ramach czynności, zdefiniowana w języku Schema Definition Language (SDL) GraphQL. |
Kod | Wymagane. Kod JavaScript wykonywany w ramach czynności Uruchom kod. |
Dane wejściowe
Dane wejściowe mogą być przekazywane z kroków realizowanych przed czynnością Uruchom kod. Aby uwzględnić te dane, możesz napisać zapytanie GraphQL w polu Dane wejściowe. Dane zwrócone z zapytania będą dostępne jako argument input
dla funkcji oznaczonej export default
nazywanej umownie main
.
Zapytanie wejściowe jest zapytaniem o dane środowiska Flow, a nie zapytaniem do API Shopify Admin. Z tego względu nie można wstawić zapytania Shopify w danych wejściowych. Ponadto Flow obsługuje błędy edges
i nodes
w zapytaniu, więc nie trzeba dodawać tych lub innych składni stronicowania do zapytania.
Przykładowe dane wejściowe, które pobierają notatkę o zamówieniu i tytuł pozycji:
Dane te są przekształcane na zmienną input
, która może być używana w kodzie:
Dane wejściowe mogą być również zdestrukturyzowane w sygnaturze funkcji:
Dane wyjściowe
Czynność Uruchom kod polega na zwróceniu niestandardowych danych. Aby zdefiniować typ danych, które zwróci kod, użyj pola Dane wyjściowe i Schema definition language (SDL). Na przykład, aby zwrócić ciąg znaków o nazwie giftMessage
i liczbę o nazwie totalGifts
:
Komentarze są opcjonalne, ale będą używane do opisu danych w interfejsie użytkownika Flow. Aby wyprowadzić te dane w kodzie JavaScript, zwróć obiekt pasujący do typu:
Możesz także zdefiniować typ niestandardowy, aby zwrócić bardziej złożone dane. Na przykład, aby zwrócić typ o nazwie Gift
zawierający ciąg znaków o nazwie message
i liczbę o nazwie amount
:
Aby uzyskać dostęp do tych danych w krokach wykonywanych po tej czynności, użyj zmiennej o nazwie Uruchom kod, która zostanie wpisana zgodnie z schematem Output
zdefiniowanym w konfiguracji czynności Uruchom kod. Możesz użyć tej zmiennej zarówno dla warunków, jak i dla czynności.
Console.log
Możesz użyć console.log
w celu wyprowadzenia danych do dziennika uruchamiania workflow Flow na potrzeby rozwiązywania problemów. Dane wyjściowe będą widoczne w dzienniku przebiegu dla workflow. Na przykład, następujące są prawidłowe:
Nie można używać console.info
, console.error
ani innych funkcji w ramach czynności Uruchom kod.
Przykład:
Przykłady czynności Uruchom kod można znaleźć w repozytorium przykładów Flow.
Ograniczenia
Czynność Uruchom kod ma następujące ograniczenia:
- Czynność Uruchom kod obsługuje ECMA2020 JavaScript. Nie obsługuje interfejsów API NodeJS, CommonJS ani importowania modułów.
- Kod nie może wykonać wywołań http (
fetch
). - Funkcje losowe i oparte na zegarze nie mogą być używane. Dane dotyczące daty, takie jak
scheduledAt
lubcreatedAt
mogą być przekazywane jako dane wejściowe. - Console.log nie zapisuje w konsoli przeglądarki.
Ponadto wymuszane są następujące limity:
- Zapytanie o dane wejściowe jest ograniczone do 5000 znaków.
- Schemat danych wyjściowych jest ograniczony do 5000 znaków.
- Łączny rozmiar obciążenia danych wyjściowych i danych wyjściowych Console.log nie może przekroczyć 50 kB.
- Kod nie może być dłuższy niż 50 000 znaków.
- Całkowity czas wykonania jest ograniczony do 5 sekund.
- Wykorzystanie pamięci jest ograniczone do 10 MB.
Plan działania
Zespół Flow planuje z czasem dodawać różne funkcjonalności do czynności Uruchom kod. W poniższej tabeli przedstawiono planowane optymalizacje i przewidywane daty realizacji.
Optymalizacja | Opis | Przewidywana dostawa |
---|---|---|
Rejestrowanie | Użycie 'console.log' w celu wyprowadzenia danych do dziennika uruchamiania na potrzeby rozwiązywania problemów. | Gotowe. |
Zewnętrzne wywołania API | Użycie funkcji pobierania JavaScript w celu wywołania interfejsów API. | 3 kw. 2024 r. |
Opinia
Czynność Uruchom kod jest nowym typem kroku w Shopify Flow. Jeśli masz uwagi i pytania, skomentuj ten post społeczności Flow.