殷东起 2023-02-21 11:41 采纳率: 90.9%
浏览 30
已结题

使用elementplus,将后端传的数字改为指定的值

使用elementplus,如何在js中,将后端传的数字改为指定的值?
这是js


const column = reactive([
  { prop: "name", label: "姓名", minWidth: 60 },
  { prop: "id", label: "工号ID", minWidth: 160 },
  { prop: "position", label: "岗位", minWidth: 60 },
  { prop: "status", label: "状态", minWidth: 60 },
]);
<el-table-column
        v-for="column in columns"
        :key="column.prop"
        :prop="column.prop"
        :label="column.label"
        :min-width="column.minWidth"
        show-overflow-tooltip
      >

我想要把status的值:1,2改为“在线”,“离线”,但我用了v-if,以及三目运算,都提示我语法错误,应该怎么做?

  • 写回答

3条回答 默认 最新

  • MarkHan_ 2023-02-21 11:54
    关注

    该回答引用GPTᴼᴾᴱᴺᴬᴵ

    你可以使用slot-scope和template来实现这个功能。在el-table-column中,可以添加一个template元素,将status属性的值作为插槽的值传递给模板,然后在模板中使用JavaScript逻辑将其转换为字符串,如下所示:

    <el-table-column
      v-for="column in columns"
      :key="column.prop"
      :prop="column.prop"
      :label="column.label"
      :min-width="column.minWidth"
      show-overflow-tooltip
    >
      <template slot-scope="scope">
        <span v-if="scope.row.status === 1 || scope.row.status === 2">
          {{ scope.row.status === 1 ? '在线' : '离线' }}
        </span>
        <span v-else>
          {{ scope.row.status }}
        </span>
      </template>
    </el-table-column>
    
    

    在这个例子中,我们首先检查status属性的值是否为1或2。如果是,我们将它转换为“在线”或“离线”,然后将结果显示为文本。如果不是1或2,我们只是显示原始值。

    这个逻辑在模板中使用三元运算符来完成。我们首先检查scope.row.status的值是否等于1。如果是,我们返回“在线”,否则返回“离线”。最后,我们在两个条件之间使用冒号运算符(:)来连接它们。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月1日
  • 已采纳回答 2月21日
  • 创建了问题 2月21日

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化