在编写质量看板时,添加了一个关于当前冲刺的故事卡状态饼图,
在这个基础上,希望能够看到这个冲刺中每个故事卡的标题内容,可以以弹窗列表的形式展示,如下
这里用到element-ui的一个组件:Dialog 对话框
前端定义交互样式
<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代码
data() {
return {
gridData: "",
...
...
...
}
},
methods: {
get_sprint_data(value) {
...
...
this.gridData = response.data.story_details
...
...
}
}
后端需要返回列表所需的数据,包含故事卡id、故事卡标题、故事卡状态
...
...
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故事卡详情
前端对应代码如下
<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代码
methods: {
view_detail(index, row) {
console.log(index);
window.open("http://xxx.xxx.xxx/browse/"+row) //打开新的浏览器窗口,访问链接
},
...
...
}
OK,列表功能就完成了
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。