Kodu çalıştır

Kod çalıştır işlemi, JavaScript kodu yürütür. İş akışının önceki adımlarından gelen verileri Kod çalıştır işlemine girdi olarak aktarabilir ve sonraki adımlarda kullanılacak değerleri döndürebilirsiniz.

Alanlar

Kod çalıştır işlemi aşağıdaki alanları içerir.

Kod çalıştır işleminde kullanılan alanlar.
Alan Açıklama
Input Gerekli. Önceki adımlardan elde edilen verilerin Kod çalıştır eyleminde girdi olarak kullanılmasını sağlayan bir GraphQL sorgusu.
Çıktı Gerekli. GraphQL'in şema tanımlama dilinde (SDL) tanımlanan, işlem tarafından döndürülecek verilerin temsili.
Kod Gerekli. Kod çalıştır işleminin yürüteceği JavaScript.

Girdi verileri

Girdi verileri, Kod çalıştır işleminden önce gerçekleşen adımlardan aktarılabilir. Bu verileri eklemek için Girdi alanına bir GraphQL sorgusu yazabilirsiniz . Sorgudan döndürülen veriler, export default olarak işaretlenen işlevde input bağımsız değişkeni olarak kullanılabilir. Sorguda sayfalandırma yapmanıza veya edges ve nodes kullanmanıza gerek yoktur; Flow bunları sizin için yönetir.

Sipariş notunu ve satır öğesinin başlığını alan örnek bir girdi:

{
  order {
    note
    lineItems {
      title
    }
  }
}

Bu veriler, kodda kullanılabilecek bir input değişkenine dönüştürülür:

export default function main(input) {
  // input.order.note
  // input.order.lineItems[0].title
}

Girdiler ayrıca işlev imzasında da yapılandırılabilir:

export default function main({order}) {
  // order.note
  // order.lineItems[0].title
}

Çıktı verileri

Kod çalıştır işlemi özel veriler de döndürebilir. Kodun geri döndüreceği verilerin türünü tanımlamak için Çıktı alanını ve GraphQL'in Şema tanımlama dilini (SDL) kullanın. Örneğin giftMessage adlı bir dize ve totalGifts adlı bir sayı döndürmek için:

type Output {
  "The message to include in the gift"
  giftMessage: String!
  "The total number of gifts"
  totalGifts: Int!
}

Yorumlar isteğe bağlıdır ancak Flow kullanıcı arabiriminde verileri açıklamak için kullanılır. JavaScript kodunda bu verilerin çıktısını almak için tür ile eşleşen bir nesne döndürün:

export default function main(input) {
  // your code
  return {
    giftMessage: 'Hello',
    totalGifts: 1,
  };
}

Ayrıca, daha karmaşık veriler döndürmek için özel bir tür de tanımlayabilirsiniz. Örneğin, Gift adlı bir dize ve message adlı bir sayı içeren amount adlı bir tür döndürmek için:

type Output {
  "The gift to send"
  gifts: [Gift!]!
}

type Gift {
  "The message to include in the gift"
  message: String!
  "The total number of gifts"
  amount: Int!
}

Bu işlemi takip eden adımlarda bu verilere erişmek için, Kod çalıştır işlem konfigürasyonunda tanımladığınız Output şemasına göre türü belirlenecek olan Kod çalıştır adlı değişkeni kullanın. Bu değişkeni hem koşullarda hem de işlemlerde kullanabilirsiniz.

Örnek

Kod çalıştır işleminin örneklerini, Flow örnekleri deposunda bulabilirsiniz.

Sınırlamalar

Kod çalıştır işlemi, aşağıdaki sınırlamalara sahiptir:

  • Kodunuz modülleri içe aktaramaz.
  • Kodunuz http çağrıları (fetch) yapamaz.
  • Kodunuzda console.log kullanılamaz.
  • Rastgele ve saate dayalı işlevler kullanılamaz. scheduledAt veya createdAt gibi tarih verileri, girdi olarak aktarılabilir.

Ayrıca aşağıdaki sınırlar da uygulanır:

  • Girdi verileri sorgusu 5000 karakterle sınırlıdır.
  • Çıktı verileri şeması 5000 karakterle sınırlıdır.
  • Çıktı verileri yükü 50 KB ile sınırlıdır.
  • Kod 50.000 karakterden uzun olamaz.
  • Toplam yürütme süresi 5 saniyeyle sınırlıdır.
  • Bellek kullanımı 10 MB ile sınırlıdır.

Yol haritası

Flow ekibi, Kod çalıştır işlemine zaman içinde yeni özellikler eklemeyi planlamaktadır. Aşağıdaki tabloda, iyileştirmeler ve tahmini sunum zamanları ana hatlarıyla açıklanmıştır.

Kod çalıştır işlemine yönelik iyileştirmeler için yol haritası
İyileştirme Açıklama Tahmini Sunum Zamanı
Hata düzeltmeleri Hata düzeltmeleri ve temizlik Şubat 2024
Günlük kaydı "Console.log"u kullanarak hata giderme amacıyla Çalıştırma günlüğüne veri çıktısı alma. Nisan 2024 başı
Harici API çağrıları API çağrıları için JavaScript'in alma özelliğini kullanma. 2024'ün 3. çeyreği

Geri bildirim

Kod çalıştır işlemi, Shopify Flow'da yeni bir adım türüdür. Geri bildirimleriniz ve sorularınız varsa lütfen bu Flow topluluk gönderisine yorum ekleyin.

Shopify ile satış yapmaya hazır mısınız?

Ücretsiz olarak dene