描述问题:
Select 选择器采用source的API方式请求选项数据,请求成功后默认选中第一个选项,并且给Select 选择器增加了change事件,但是Select 选择器在请求完接口后自动选择第一个选项时并没有触发change事件,理论上来说它的值已经改变,但是却不触发change事件
截图或视频:
可以的话,尽可能提供截图或视频来补充描述你的问题...
如何复现(请务必完整填写下面内容):
- 你是如何使用 amis 的?
npm
- amis 版本是什么?请先在最新 beta 版本测试问题是否存在
1.9.1-beta.17 - 粘贴有问题的完整
amis schema
代码:
{
"type": "select",
"label": "银行卡号:",
"name": "BankKeyID",
"placeholder": "請选择银行卡",
"required": true,
"options": [
],
"modalMode": "dialog",
"checkAll": false,
"source": {
"method": "post",
"url": "/api/Bank/SearchBankList",
"data": {
"SourceKeyID": "${TenantKeyID}"
},
"trackExpression": "${TenantKeyID}",
"responseData": {
"options": "${items|pick:label~Bank,value~KeyID,name~AccountName,no~AccountNo}",
}
},
"menuTpl": "<div>${name}(${label}:${no})</div>",
"onEvent": {
"change": {
"actions": [
{
"componentId": "u:869685709cd0",
"args": {
"valueInput": "${event.data.options|filter:value:match:event.data.value|pick:no|first}",
"value": "${event.data.options|filter:value:match:event.data.value|pick:no|first}"
},
"actionType": "setValue"
}
]
}
},
"selectFirst": true
}
- 操作步骤
就是一个简单的表单,然后拖一个select组件,给它加一个设置source数据源,再加上一个change事件
5条答案
按热度按时间mnowg1ta1#
相同的场景,也是select和change使用,初始化select的值不会触发change事件,请问问题解决了吗? @myde86@2betop
piok6c0g2#
这个问题解决了吗?有没有别的曲线方法监听到selectFirst导致的值变化?
2nc8po8w3#
Select 选择器默认选中第一项不会触发change事件 这个问题或者有其他的解决思路吗? @hsm-lv
n6lpvg4x4#
Select 选择器默认选中第一项不会触发change事件 这个问题或者有其他的解决思路吗? @hsm-lv
Input tree等组件 selectFirst也是一样的表现逻辑
同时这两个组件(selectFirst)在form下也同样不会触发form的change事件
ocebsuys5#
使用doAction setValue改变选中的值也不会触发change事件,这可如何是好