3.8.5插件UI组件ui-select元素bug

今天准备更新下插件,适配3.8.5时,发现ui-select下拉框中的文本突然消失了,是什么原因。。。

3.8.5之前的版本都正常的。

下拉框代码如下:

<ui-select :value="item.guideType" @change="onGuideTypeSelectionChange($event.target.value, index)" style=" width: 25%; margin-bottom: 10px;">
    <option value="touch"><ui-label value="i18n:user-guide.touch"></ui-label></option>
    <option value="key"><ui-label value="i18n:user-guide.key"></ui-label></option>
</ui-select>

如果不使用i18n,则正常。

<ui-select :value="item.guideType" @change="onGuideTypeSelectionChange($event.target.value, index)" style=" width: 25%; margin-bottom: 10px;">
    <option value="touch">触摸引导</option>
    <option value="key">按键引导</option>
</ui-select>

3.8.5是对ui-select做了什么调整吗?

先暂时用这种方式解决下,还请官方有空的时候看下上面的问题。

<option value="touch">{{ i18nTrans.touch }}</option>
<option value="key">{{ i18nTrans.key }}</option>

另外,还有个问题:当编辑器切换语种时,ui-select中的文本不会跟着切换。

感谢反馈,问题已经记录,我这边会尽快排查和修复

1赞

你好,我排查了ui-select的底层实现,发现这个暂时不支持这种做法,你之前这么做可以正常展示么,我今天测试了多个版本,均不能正常展示。我们会在3.8.6版本的时候,我们会开放ui-select-pro组件,到时可以使用这个组件,里面集成了i18n,界面更友好

是的,之前都可以的。

好的,谢谢,期待3.8.6。

你好,我确认一下之前是什么版本的可以正常展示,方便我这边纵向的排查问题,我目前试了,3.8.x版本的,目前发现都是不能展示的

你好,插件本身是在3.7.2版本的Cocos中开发的,3.8.5之前的用以下代码都可以,3.8.5的就不行了。Cocos每次发布新版本的时候,我都会在新版本中用下插件,确保使用正常。

<ui-select :value="item.guideType" @change="onGuideTypeSelectionChange($event.target.value, index)" style=" width: 25%; margin-bottom: 10px;">
    <option value="touch"><ui-label value="i18n:user-guide.touch"></ui-label></option>
    <option value="key"><ui-label value="i18n:user-guide.key"></ui-label></option>
</ui-select>

3.8.5中的ui-select如果嵌套了带i18n的ui-label,无法正常显示。

但如果是动态切换了编辑器语种的话,ui-select各个版本都不行(3.7.2-3.8.5),只有重新打开插件面板,语种才能切换过来。

明白,也就是这个插件是基于3.7.2进行开发的 :pray:

:smiley:是的

借个楼,也是3.8.5版本
数据修改后option的value没有实时更新,通过调试工具可以看到:ui-select下的option的value发生了更新,但是shadow-root下的option的value没有更新,导致找不到和ui-select的value对应的option

显示效果:
image

调试工具元素结构:

插件html:

感谢反馈,我会尽快排查问题,并且给出回复或解决方案

相关回复见帖 3.8.5插件ui-select无法正常显示

没得多选功能嘛