# 脚本

{% hint style="info" %}

### 逻辑-脚本组件

{% endhint %}

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2FCgKN3VlKPCaBfneKczrb%2Fimage.png?alt=media&#x26;token=33af89c8-9996-48d9-b683-b01b7637f552" alt="" width="275"><figcaption></figcaption></figure>

{% hint style="info" %}
“脚本”组件只能执行 Javascript 代码。
{% endhint %}

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2FSy7nfqpAGpTsETfGoxFZ%2Fimage.png?alt=media&#x26;token=33a26e48-5999-4551-bf1b-e6672667f50e" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="info" %}
注意：

如果你在“脚本”组件中加了双引号，那么脚本中的变量不会被解析。

所以你需要写`console.log({{My variable}})`

而不是写`console.log("{{My variable}}")`
{% endhint %}

### **setVariable功能**

如果你想使用 Javascript 设置变量值，那么建议你去用“[设置变量](https://doc.nyai.chat/jin-jie-jiao-cheng-gong-zuo-liu/luo-ji-zu-jian/she-zhi-bian-liang)”组件。因为在大多数情况下“[设置变量](https://doc.nyai.chat/jin-jie-jiao-cheng-gong-zuo-liu/luo-ji-zu-jian/she-zhi-bian-liang)”组件更合适你的需求。

如果您执意想使用脚本组件设置变量，那么可以使用`setVariable`在脚本中定义变量函数。例如：

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

注意：`setVariable`功能，只能在服务器上执行的脚本中使用，如果你开启了“在客户端执行”，那么`setVariable`将不会起到任何作用。<br>

### 脚本组件示例

**1、通过变量传递参数**

* 1、在输入本文组件，定义一个变量名：My variable

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2FRNc3wXMUGEVHIGzxiacn%2Fimage.png?alt=media&#x26;token=a298080a-32fd-4565-b1f4-9326865696cc" alt=""><figcaption></figcaption></figure>

* 2、在脚本组件设置变量名为：My variable

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2Fv0E1v659rhGEkYqr6Ku9%2Fimage.png?alt=media&#x26;token=a4177493-10a6-4b59-9b87-b40a54ea84fe" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2Fjkbtv1kHChphybt350Xe%2Fimage.png?alt=media&#x26;token=505558b0-c5b6-4796-b9f4-40d129b87532" alt="" width="509"><figcaption></figcaption></figure>

* 3、在气泡组件内输出My variable变量名：

<figure><img src="https://2574001795-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtUb4wPmO9CEoieWz9b2g%2Fuploads%2FucrnZrnvxU5hYK9vgnLm%2Fimage.png?alt=media&#x26;token=096b57bd-91ea-4fb4-a258-d16eb7f28cda" alt=""><figcaption></figcaption></figure>

####

#### 2、重新加载页面

```javascript
window.location.reload()
```

####

#### 3、页面提示

```
alert("这是脚本组件的提示")
```

####

#### 4、如果变量具有特定值则重定向

```javascript
if({{Category}} === 'qualified') {
  window.location.href = 'https://codemossai.com/'
}
```

{% hint style="info" %}
还有很多 Javascript 代码可以执行，这将需要您自行挖掘
{% endhint %}
