You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Wix Velo多角色成员场景下元素隐藏问题求助

解决Wix Velo中多角色成员的元素可见性问题

问题分析

原代码仅获取用户的第一个角色做判断,当用户同时拥有Gardener和其他角色时,若第一个角色不是Gardener,就会错误隐藏元素#image1。正确逻辑应为:只要用户角色列表里包含Gardener,就显示元素,否则隐藏。

修复后的代码

import wixUsers from 'wix-users';

$w.onReady(function () {
    let currentUser = wixUsers.currentUser;

    currentUser.getRoles()
        .then((roles) => {
            // 检查用户所有角色中是否包含Gardener
            const hasGardenerRole = roles.some(role => role.name === 'Gardener');
            if (hasGardenerRole) {
                $w('#image1').show();
            } else {
                $w('#image1').hide();
            }
        })
})

代码说明

  • 用Array.some()遍历用户全部角色,只要存在名称为Gardener的角色就返回true
  • 替换原代码仅取第一个角色的逻辑,适配多角色场景下的判断需求
  • 保留原异步获取角色的流程,保证代码运行稳定性

内容的提问来源于stack exchange,提问作者helpme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 12:02:33