前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >质量看板开发实践(六):添加一个列表,显示当前冲刺的故事标题

质量看板开发实践(六):添加一个列表,显示当前冲刺的故事标题

原创
作者头像
冰霜
发布2022-05-01 19:47:57
4741
发布2022-05-01 19:47:57
举报

在编写质量看板时,添加了一个关于当前冲刺的故事卡状态饼图,

在这个基础上,希望能够看到这个冲刺中每个故事卡的标题内容,可以以弹窗列表的形式展示,如下

这里用到element-ui的一个组件:Dialog 对话框

前端定义交互样式

代码语言:javascript
复制
          <div style="position: absolute;margin-top: 50%;">
            <el-button type="text" @click="dialogTableVisible = true" style="font-size: 15px;">查看故事卡详情</el-button>
            <el-dialog title="故事卡详情" :visible.sync="dialogTableVisible" width="60%">
              <el-table :data="gridData" border style="width: 100%" max-height="400" :default-sort = "{property: 'story_key', order: 'descending'}">  <!--max-height设置表格最大高度,超出显示滚动条-->
                <el-table-column type="index" width="50" align="center"></el-table-column>
                <el-table-column property="story_key" sortable label="故事卡key" width="130" align="center"></el-table-column>
                <el-table-column property="story_name" label="故事卡标题" width="400" align="center"></el-table-column>
                <el-table-column property="story_status" sortable label="故事卡状态" width="130" align="center"></el-table-column>
                <el-table-column property="address" label="操作" align="center" fixed="right">  <!--控制这一列的位置-->
                  <template slot-scope="scope">
                    <el-button
                        @click.native.prevent="view_detail(scope.$index, scope.row.story_key)"
                        type="text"
                        size="small">
                      详情
                    </el-button>
                  </template>
                </el-table-column>
              </el-table>
            </el-dialog>
          </div>

el-table 标签中的 :data="gridData"是往列表中渲染的数据

js代码

代码语言:javascript
复制
  data() {
    return {
      gridData: "",
      ...
      ...
      ...
    }
  },
  
  methods: {
      get_sprint_data(value) {
          ...
          ...
          this.gridData = response.data.story_details
          ...
          ...
      }
  }
  

后端需要返回列表所需的数据,包含故事卡id、故事卡标题、故事卡状态

代码语言:javascript
复制
            ...
            ...
            summary = []
            for i in issues:

                # print(i.raw)  # 打印每个故事的原始信息
                summary.append({"story_key": i.raw["key"],
                                "story_name": i.raw["fields"]["summary"],
                                "story_status": i.raw["fields"]["status"]["name"]})          
             ...
             ...
             res = {
                ...
                ...
                "story_details": summary
            }
            return res    

数据返回前端后,要在列表后边添加一个操作列,点击按钮可以跳转至jira故事卡详情

前端对应代码如下

代码语言:javascript
复制
                <el-table-column property="address" label="操作" align="center" fixed="right">  <!--控制这一列的位置-->
                  <template slot-scope="scope">
                    <el-button
                        @click.native.prevent="view_detail(scope.$index, scope.row.story_key)"
                        type="text"
                        size="small">
                      详情
                    </el-button>
                  </template>
                </el-table-column>

操作按钮定义为【详情】,点击【详情】进行跳转

@click.native.prevent绑定了一个方法view_detail传入2个参数:列表数据的序号index,列表中的story_key字段(也就是故事卡的id)

js代码

代码语言:javascript
复制
methods: {
    view_detail(index, row) {
      console.log(index);
      window.open("http://xxx.xxx.xxx/browse/"+row)  //打开新的浏览器窗口,访问链接
    },
    ...
    ...
 }

OK,列表功能就完成了

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com