Script

O bloco “Script” permite que você execute um código JavaScript.

Obs: Este bloco não permite que você crie um bloco visual personalizado.

Obs: Variáveis ​​em script não são analisadas, elas são avaliadas. Então, elas devem ser tratadas como se fossem variáveis ​​JavaScript reais.

Você precisa escrever console.log({{Minha variável}})em vez deconsole.log("{{Minha variável}}")

setVariable function

Se você quiser definir um valor de variável com Javascript, o bloco Definir variável é mais apropriado para a maioria dos casos.

Entretanto, se você quiser definir variáveis ​​em um bloco de script, você pode usar a setVariablefunção no seu script:

if({{My variable}} === 'foo') {
  setVariable('My variable', 'bar')
} else {
  setVariable('My variable', 'other')
}

A setVariablefunção só está disponível em scripts executados no servidor, portanto não funcionará se estiver Execute on client?marcada.

Limitações em scripts executados no servidor

Como o script é executado em um ambiente isolado e seguro, há algumas limitações.

  • Funções globais como console.log, setTimeout, setInterval, etc. não estão disponíveis

  • O fetchcomportamento da função é um pouco diferente da fetchfunção nativa. Você só precisa pular a parte await response.text()or await response.json().

// ❌ Isso gera um erro
const response = await fetch('https://jsonplaceholder.blucode.com/todos/1')
const data = await response.text()

// ✅ Isso funciona
const data = await fetch('https://jsonplaceholder.blucode.com/todos/1')

responsesempre será um stringmesmo se a solicitação retornar um objeto JSON. Se você sabe que a resposta é um objeto JSON, você pode analisá-la usando JSON.parse(response).

// ❌ Isso gera um erro
const response = await fetch('https://jsonplaceholder.blucode.com/todos/1')
const data = await response.json()

// ✅ Isso funciona
const response = await fetch('https://jsonplaceholder.blucode.com/todos/1')
const data = JSON.parse(response)
  • Você não pode usar importou requireimportar bibliotecas externas

Last updated