如何在 Element UI 表行中正确设置链接(应该很简单?)

2024-01-03

我在 Element UI 中得到了一张包含用户项目的表。由于 Element UI 不适用于<tr></tr>我对如何处理这件事有点困惑。该表的目的是显示用户的项目并对其执行基本的 CRUD 操作。这意味着对于每一行,都应该显示一个唯一的 ID 作为名称,并且对于操作,它们应该允许用户使用唯一的 ID 编辑/删除该特定项目。在普通的 HTML 表中我会这样:

<table class="table table-hover">
            <thead class="table-header">
                <tr>
                    <th>Name</th>
                    <th>Actions</th>
                </tr>
            </thead>
            <tbody>
                <tr
                    v-for="project in personData"
                    :key="project._id"
                >
                    <td>{{ project._id }}</td>

                    <td>
                        <el-button
                            type="text"
                            size="mini"
                            @click="onLoad"
                        >Load <i class="el-icon-upload2" /></el-button>
                        <router-link
                            :to="{name: 'editproject', params: { id: project._id }}"
                            tag="span"
                        >
                            <el-button
                                type="text"
                                size="mini"
                            > Edit <i class="el-icon-edit" /></el-button>
                        </router-link>
                        <el-button
                            type="text"
                            size="mini"
                            @click="deleteTemplate(project._id)"
                        >Delete <i class="el-icon-delete" /></el-button>
                    </td>
                </tr>
            </tbody>
        </table>

该代码产生以下结果table https://gyazo.com/6303e97a68bff3a7d260291b76cec499

可以单击编辑和删除按钮,这将推送到具有该行给定 ID 的编辑路由。

Element UI 表将表数据绑定到主<el-table>元素,然后您可以使用 props 指定应在行中显示的数据。所以我让它与 id 一起工作。我所要做的就是定义一个<el-table-column>带有一个支柱_id。我的 Element UI 表当前如下所示:

<el-table
            v-loading="loading"
            :data="personData"
            size="small"
            @cell-mouse-enter="onHover"
        >
            <el-table-column
                label="Name"
                prop="_id"
            >
            </el-table-column>

            <el-table-column
                label="Actions"
                width="280"
            >
                <el-button
                    type="text"
                    size="mini"
                    @click="onLoad"
                >
                    Load
                    <i class="el-icon-upload2" />
                </el-button>

                <router-link
                    :to="{name: 'editproject', params: { id: _id }}"
                    tag="span"
                >
                    <el-button
                        type="text"
                        size="mini"
                    > Edit <i class="el-icon-edit" /></el-button>
                </router-link>

                <el-button
                    type="text"
                    size="mini"
                >
                    Download
                    <i class="el-icon-download" />
                </el-button>
                <el-button
                    type="text"
                    size="mini"
                    @click="onDelete(scope.row.id)"
                >
                    Delete
                    <i class="el-icon-delete" />
                </el-button>
            </el-table-column>
        </el-table>

该代码产生以下结果table https://gyazo.com/454ca05ce5e39e1bc9e4263b08551e72

编辑按钮应链接到正确的_id。但是在表内执行任何循环来获取与某个对应的正确 idedit按钮导致该编辑按钮显示两次。这是预期的结果。不幸的是,我似乎无法解决这个简单的问题...任何人都可以帮助我解决这个问题吗?


通过使用列的槽,您可以访问整行:

根据 element-ui 文档(https://element.eleme.io/#/en-US/component/table https://element.eleme.io/#/en-US/component/table):

表列的自定义内容。范围参数为 { row, column, $index }

    <template>
  <el-table v-loading="loading" :data="personData" size="small" @cell-mouse-enter="onHover">
    <el-table-column label="Name" prop="_id"></el-table-column>
    <el-table-column label="Actions" width="280">
      <template v-slot:default="table">
        <router-link :to="{name: 'editproject', params: { id: table.row._id }}" tag="span">
          <el-button type="text" size="mini">
            Edit
            <i class="el-icon-edit" />
          </el-button>
        </router-link>
      </template>
    </el-table-column>
  </el-table>
</template>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Element UI 表行中正确设置链接(应该很简单?) 的相关文章

随机推荐

  • 通过 Azure Databricks 连接到本地 SQL Server

    Azure Databricks 是否支持连接到本地 SQL Server 您可以按照 scsimon 的建议使用 JDBC 驱动程序 但是 除非您的数据库可以通过互联网访问 否则它将无法连接 要解决此问题 您需要将 databricks
  • 是否可以使用 Gradle(不是产品风格)将 AndroidManifest 添加到特定的 buildType?

    我们正在努力设置一些活动仪器测试以在构建服务器上运行 由于这需要设备处于唤醒状态 我发现的选项似乎是 将设备设置为 保持清醒 并禁用屏幕锁定 在测试用例中以编程方式禁用键盘保护 如所述here http developer android
  • 如何在 ReactJS 中预览视频

    我正在使用 ReactJS 进行项目 目前我正在使用 ant design 进行文件上传 我想在用户选择视频时预览视频 我是 ReactJS 新手 无法完成我的任务 有人可以帮助我如何预览视频吗 我将与您分享我的代码您可以检查我的代码 谢谢
  • 使用 Json.NET 和动态数据反序列化 JSON

    我正在尝试将一些 JSON 数据反序列化为应用程序的对象 到目前为止 一切都很好 因为 JSON 数据的属性是静态的 键和值 现在我得到了一个结果 其中关键是动态数据 下面是一个 JSON 网址示例 生成的 JSON 是 query pag
  • Java集合中迭代器的游标实现

    All 只是编程初学者 我正在探索java集合和迭代器 我想知道如何使用游标来迭代集合 public class Collections public void myFun int i 0 List
  • 泛型方法中的运算符重载

    此代码片段来自 C 深度学习 static bool AreReferencesEqual
  • 如何在 R 中导入 ical .ics 文件

    我想导入一个然而 当我尝试这样做时 sneak cal lt read delim iCal TribeEvents ics sep header FALSE stringsAsFactors FALSE strip white TRUE
  • jQuery/css:带有方形 div 的流体响应同位素网格

    我试图弄清楚是否有可能拥有具有流体同位素布局的方形 div 我有一个 4 列网格 每个 div 是容器宽度的 24 但我希望这些 div 是完美的正方形 我不知道如何实现这一点 这是一个有效的 jsfiddle 演示 http jsfidd
  • 在C中使用枚举而不声明枚举变量没有问题吗?

    我对 enum 类型变量和 int 类型变量在 C 中的工作原理有何不同感到困惑 我听说 C 中枚举类型和整数类型之间可能存在转换错误 但 C 不会 那么如果C中整型变量和枚举类型变量没有区别的话 我可以只声明枚举名称并使用它们而不声明任何
  • 我可以使用 org.reflection 使用通配符获取包类吗?

    我正在使用 Reflections reflections new Reflections com mypackage root new MethodAnnotationsScanner 但是通过这种方法 我得到了很多我不需要的包级别的注释
  • Webpack vue-loader 为单页 .vue 组件提供“意外的令牌 {”

    我主要是一名 C 后端开发人员 正在尝试学习 Vue js 我使用 Visual Studio 2017 ASP NET MVC 作为 API 一种布局 Vue js Webpack vue单页组件文件由以下方式加载vue loader a
  • $state.go 之后未调用 Ionic 控制器

    我有一个控制器 当第一次从第一个控制器打开状态时 它会从后端应用程序获取数据 它会加载数据 但是当它尝试再次打开它时 它不会加载新数据 具体方法如下 if selectedServiceID 000 state go balanceInqu
  • 使用 UIWebView+AFNetworking 时的链接如下

    我正在尝试 AFNetworking 2 0 的新功能UIKit AFNetworking扩展为UIWebView loadRequest progress success failure 到目前为止一切顺利 但是在发出初始请求后 由用户交
  • 正则表达式替换字符串末尾的“...”

    我有一个像这样的字符串 text1 python is fun 我想将多个 替换为一个 仅当它们位于字符串末尾时 我希望输出为 python is fun 所以当只有一个 时位于字符串末尾 则不会被替换 text2 python is fu
  • D3选择性变焦

    我正在研究一种带有一些附加功能的力导向图形布局 可选择的链接 节点 工具提示 鱼眼效果 以及对我的问题很重要的缩放和平移 现在 缩放效果非常好 如下所示 d3 append svg g call d3 behavior zoom on zo
  • 我可以让 gcc 在运行时计算结果为 NaN 或 inf 时告诉我吗?

    有没有办法告诉 gcc 抛出 SIGFPE 或类似的东西来响应计算结果NaN or inf在运行时 就像被零除一样 我已经尝试过 fsignaling nans标志 这似乎没有帮助 几乎所有从非 NaN 输入生成 NaN 的浮点运算或数学库
  • jooQ spring boot 多模式(读写分离)

    我想将 jooQ 与 Spring Boot 一起使用 我有主从架构 所以我想将 jooQ 与主从架构一起使用 主用于写入 从用于读取 我应该如何进行 现在我使用 pom xml 来配置 jooQ
  • 在后台启动 Flask 服务器

    我有一个烧瓶应用程序 目前正在按以下方式启动 phantom py author uruddarraju from phantom api v1 import app app run host 0 0 0 0 port 8080 debug
  • 设置全局 CURL 超时

    我正在使用专有的第 3 方 Drupal 模块 该模块通过curl 查询第 3 方服务 该服务最近有点不稳定 这使我的页面加载速度大大减慢 当我有大量流量时 我会达到 max connections 该扩展查询的信息并不重要 但它足够重要
  • 如何在 Element UI 表行中正确设置链接(应该很简单?)

    我在 Element UI 中得到了一张包含用户项目的表 由于 Element UI 不适用于 tr tr 我对如何处理这件事有点困惑 该表的目的是显示用户的项目并对其执行基本的 CRUD 操作 这意味着对于每一行 都应该显示一个唯一的 I