用于多个组件之间数据的交互
大屏中部分组件会带有数据输出的功能,比如搜索框、下拉框等。 若组件带了数据输出的功能,我们就可以将输出的值绑定到全局变量。绑定到全局变量后其他组件才能使用这个变量
注意:要使输出生效必须要把“启用”勾上
下面我们添加一个搜索框组件,然后将输出的值绑定到全局变量a
当组件的输出值绑定到全局变量后,我们就可以在另一个组件的数据源配置中使用这个变量
静态数据源中使用全局变量要把变量名要写在双大括号内
下面我们添加一个“大标题”组件,并将数据源中的value值设置为{{a}}
注意:数据源编辑完要点提交才能生效
接下来点击预览 (编辑状态无法在搜索框中输入值) ,b并在搜索框中输入值并点击搜索按钮,大标题组件也会跟着变
SQL数据源支持动态SQL,语法和MyBatis相同,不需要<select>
标签。
#{}
和${}
的区别
#{}
在查询时,由一个“?”来标识,并被传递到一个新的预处理语句中,如:
SELECT * FROM PERSON WHERE ID = #{id}
这样做更安全,更迅速,通常也是首选做法
${}
中的值会直接替换字符串,有时你就是想直接在 SQL 语句中直接插入一个不转义的字符串。 比如 ORDER BY 子句,这时候你可以:
ORDER BY ${columnName}
下面我们将刚刚添加的大标题组件的数据源设置为SQL
select #{a}
可以发现效果和之前的静态数据相同
这里只是一个演示的例子,所以直接将变量放到select语句中,实际场景通常是放到where语句中或order by语句中
API数据源可以在“请求头”和“请求参数”中使用变量,用法和静态数据相同
应用数据源可以在筛选条件中使用变量,用法也和静态数据类似。