使用element制作一个列表页面,并且当点击“查看调查问卷”时弹出弹框。

(图一)

(图二)

(图三)


1. 制作一个名叫DataListTable

<DataListTablev-show="showTable":list="list":total-num="totalNum"class="book-manage-table"@pageTurn="getSurveyList"/>

2- 明确该组件里面的参数是父组件里面的值,并进行设置

 data() {                 //data里面的值return {showTable: true,list: [],totalNum: 0,number: 20,page: 1,},getSurveyList(index, name) {   //父组件传递给子组件的函数const data = {   //这里是获取列表数据的入参page: 1,pagesize: 20,XX: XX,XX: XX,XX:XX,XX,XX};DataResearch.questionList(data)   //调用接口获取列表数据.then(res => {if (res.code === 1) {   if (res.data.length !== 0) {    //获得列表数据处理this.showTable = true;this.list = res.data;this.totalNum = res.total;} else {this.showTable = false;this.list = [];}}}).catch();}

3- 操作子组件DataListTable

因为这个我使用了vue框架那么久老三段:

<template></template><script></script><style lang="scss" scoped></style>

三段讲解:

第一段:

<template><div class="data-manage-table"><el-table:data="list"         <!-- 父组件传递的列表数据 -->stripeborderclass="table"><el-table-columnprop="student_id"label="学生ID"width="150"align="center"/><el-table-columnlabel="老师ID"width="150"prop="teacher_id"align="center"/><el-table-columnlabel="班主任ID"width="120"prop="assistant_id"align="center"/><el-table-columnlabel="顾问ID"width="120"prop="consultant_id"align="center"/><el-table-columnlabel="类型"align="center"width="180"prop="type"/><el-table-columnlabel="阶段"width="180"prop="stage_name"align="stage"/><el-table-columnlabel="提交日期"prop="create_time"align="center" /><el-table-columnlabel="操作"prop="id"align="center"><template slot-scope="scope"><el-buttontype="text"size="small"@click="goAuditionDetail(scope.row.id)">查看调查问卷</el-button>      <!--  点击调查问卷时,传递对应参数,展示弹框内容  --> </template></el-table-column></el-table><!--  分页  --><el-pagination:page-size="page_size":total="totalNum":current-page="currentPage"layout="prev, pager, next, jumper"class="pagination"@current-change="handleCurrentChange"/><!--  弹框 --><el-dialog:visible.sync="dialogFormVisible"title="查看调查问卷"><divv-for="(item,index) in data":key="index"><el-form class="see-questionnaire"><el-row :gutter="20"><el-col:span="5"class="item-title">标题:</el-col><el-col :span="19">{{ item.question | filterDate }}</el-col></el-row><el-row :gutter="20"><el-col:span="5"class="item-title">问卷链接:</el-col><el-col :span="19">{{ item.answer | filterDate }}</el-col></el-row></el-form></div></el-dialog></div>
</template>

第二段:

<script>
import DataResearch from "service/data-research";    //  引入control层去调用接口export default {filters: {filterDate(val) {   //时间兼容处理函数return val || "--";}},props: {list: {            //父组件传递list值校验type: Array,default: () => []},totalNum: {    //父组件传递 totalNum值校验type: Number,default: 0}},data() {     //子组件里面的值设置return {currentPage: 1,page_size: 20,dialogFormVisible: false,    //默认不展示弹框formLabelWidth: "120",data: {}};},methods: {handleCurrentChange(val) {   //点击当前页,传递当前页码给父组件this.$emit("pageTurn", val);},goAuditionDetail(id) {      / /查看调查问卷DataResearch.questionDeatil({ answer_id: id })    // 调用接口数据.then(res => {if (res.code === 0) {this.data = res.data;this.dialogFormVisible = true;}}).catch(() => {this.$message({type: "error",message: "获取作答详情失败,请稍候重试!"});this.dialogFormVisible = true;});}}
};
</script>

第三段:

<style lang="scss" scoped>
.data-manage-table {.el-table__body-wrapper {overflow: hidden;}.el-dialog__title {font-size: 18px;line-height: 24px;color: #303133;font-weight: normal;}.el-form-item {margin: 5px;}.el-dialog {width: 600px;}.el-table {.table-intro {overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 3;/* autoprefixer: ignore next */-webkit-box-orient: vertical;}}.pagination {margin: 10px 0;text-align: right;}.item-title {font-size: 14px;color: #606266;text-align: right;font-weight: 700;margin-bottom: 10px;}.see-questionnaire {padding-bottom: 20px;}
}
</style>

使用element UI 快速制作一个列表页面相关推荐

  1. 如何快速开发H5列表页面

    小编最近在做一个任务:要求实现一个在微信公众号里面的H5列表页面.拿到这个任务我们首先要进行需求分析,由于是在微信公众号也就是手机里面的H5列表,所以就不可能像PC上的列表页面那样进行分页处理,应该按 ...

  2. 用Easy UI快速搭建一个后台

    今天来分享一个我前端技术-------如何使用Easy UI快速搭建一个后台,本博主也只是在官网文档学习了一个小时左右,就已经会使用了,当你学了Easy UI后,一个后台短短两分钟就可以over了,好 ...

  3. 使用html和css制作一个小米商城页面

    使用html和css制作一个小米商城页面 创作不易,可否给作者点个赞再走 html部分: /** * author 阿木木 * date 10/01 14:32 * / `<html>&l ...

  4. Unity使用Shader快速制作一个圆形遮罩

    Unity使用Shader快速制作一个圆形遮罩 如何用Shader来做出圆形.切倒角和边缘虚化 Unity使用Shader快速制作一个圆形遮罩 橙子前言 一.创建Shader 二.创建Material ...

  5. 【Houdini】如何利用黑白的图片在Houdini中快速制作一个立体的模型

    如何利用黑白的图片在Houdini中快速制作一个立体的模型 1.首先在Houdini右下角的Network中按tab创建一个Geometry 2.点击进入后,按tab创建一个trace 3.在trac ...

  6. 智能机器人c语言编程,【图片】教你快速制作一个简单的人工智能机器人(懂编程的人进来看)【科幻吧】_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 教你快速制作一个简单的人工智能机器人(懂编程的人进来看) 本文我首发于"人工智能吧",叫做<机器人理解人类语言>和< ...

  7. 实战教程|使用知晓云快速制作一个简单的个人博客

    我们在向大家征集开发课程大纲后,便陆续收到了很多建议.大家的热情与支持,是我们持续更新的动力. 由于大家的课程建议比较散,需要结合实际案例进行讲解,因此我们先从最简单的开始.本文将介绍如何通过知晓云的 ...

  8. 如何快速制作一个H5单页面网站

    在没有自助建站之前,做单页面网站也需要耗费大量的时间,编写代码,调试,上传发布一个都不能少.而有了域名版的建站宝盒后,做单页面网站的时间可以缩短至20分钟左右,还不用花钱.下面给大家介绍操作方法,有需 ...

  9. 快速制作一个chrome插件

    说在前面 在我日常开发以及娱乐生活中,浏览器是我使用频率较高的一个应用,当我大学拥有第一部电脑开始,之后不论电脑换成什么,以及使用的是什么系统,我的首选浏览器都是Chrome,不仅仅是因为其速度快,更 ...

最新文章

  1. Swagger+Spring mvc生成Restful接口文档
  2. 被质疑“在开源社区执行微软意愿”,.NET 基金会前董事为其提交的 PR 道歉并辞职...
  3. android-DNS服务找不到
  4. python 爱英斯坦台阶问题_关于Python青蛙跳台阶的问题详细讲解
  5. 部署Docker----解决删除none镜像问题
  6. 1-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案微信小程序篇(域名备案)
  7. mysql检查存在_如何检查MySQL中是否存在行?(即检查MySQL中是否存在电子邮件)...
  8. 【数据蒋堂】第46期:大数据集群该不该透明化?
  9. python操作本地数据库,Python基础篇-Python连接Mysql操作数据库
  10. 深度学习中如何选择一款合适的GPU卡的一些经验和建议分享
  11. 离职前需要注意的事情?
  12. W806串口管脚复用
  13. 支付宝小程序设置服务器维护,教程|如何开发支付宝小程序服务端:蚂蚁金融云...
  14. html 在线播放器,HTML5 Web播放器-Video.js
  15. 11.Unity2D 横版 简单AI 之背后受击转身+寻路跟随敌人+模块化+射线检测
  16. 手机和电脑如何制作gif动画
  17. 探索者STM32F407开发板学习笔记一安装调试,串口下载
  18. I'm up to my ears
  19. 全奖博士招生,英国考文垂大学
  20. 聚焦分布式资本:中国首家区块链基金如何布局区块链?|链捕手

热门文章

  1. mysql常用的hint
  2. Java如何跨语言调用Python/R训练的模型
  3. JIAVA知识点整理
  4. android软件中加入广告实现方法
  5. webapp 中为span元素赋值
  6. python matplotlib画图产生的Type 3 fonts字体没有嵌入问题
  7. 安装 PHP Memcache 扩展
  8. Generative Adversarial Nets[BEGAN]
  9. 偶尔用得上的MySQL操作
  10. Linux终端操作MySQL常用命令