文章目录

1、引言

寒假是用来反超的!一起来学习Vue把,这篇博客是关于Timeline组件使用,由于element-ui与vue-cli-plugin-element更新冲突问题,导致我们不能直接通过导入的方式使用该组件,于是我们采用手动导入的方式来解决这个问题

2、导入与配置

将两个关键文件夹放入plugins中

提供文件:


链接:https://pan.baidu.com/s/1orB10hFqMRfzD_akmP3hBA
提取码:cqgc

链接:https://pan.baidu.com/s/1YjguGpoRJj64vwFqYt3lGQ
提取码:ovlg

实现效果:

实现过程:

先在element.js中导入Timeline组件并注册全局可用组件

// 导入组件
import Timeline from './timeline/index.js'
import TimelineItem from './timeline-item/index.js'
// 注册全局可用组件`https://element.eleme.cn/#/zh-CN/component/timeline`
Vue.use(Timeline);
Vue.use(TimelineItem);

推荐查看官方文档——Element组件中Timeline使用

<el-timeline :reverse="reverse"><el-timeline-itemv-for="(activity, index) in activities":key="index":timestamp="activity.timestamp">{{activity.content}}</el-timeline-item></el-timeline>



此时,我们还未导入样式,如下图所示,那么在style样式中导入一下:

<style lang='less' scoped>
// 导入timeline相样式
@import '../../plugins/timeline/timeline.css';
@import '../../plugins/timeline-item/timeline-item.css';.el-cascader{width: 100%;
}
</style>

导入样式后我们的界面就变得好看多了

项目源码:
<!--  -->
<template><div><!--面包屑导航区--><el-breadcrumb separator="/"><el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item><el-breadcrumb-item>订单管理</el-breadcrumb-item><el-breadcrumb-item>订单列表</el-breadcrumb-item></el-breadcrumb><!--卡片视图区域--><el-card><el-row :gutter="20"><el-col :span="8"><el-input placeholder="请输入内容"  clearable ><el-button slot="append" icon="el-icon-search" ></el-button></el-input></el-col></el-row><!-- 订单列表数据 --><el-table :data="orderList" border stripe><el-table-column type="index" label="#"></el-table-column><el-table-column label="订单编号" prop="order_number"></el-table-column><el-table-column label="订单价格" prop="order_price"></el-table-column><el-table-column label="是否付款" prop="pay_status"><template slot-scope="scope"><el-tag type="success" v-if="scope.row.pay_status == 1">已付款</el-tag><el-tag type="danger" v-else>未付款</el-tag></template></el-table-column><el-table-column label="是否发货" prop="is_send"></el-table-column><el-table-column label="下单时间" prop="create_time"><template slot-scope="scope">{{scope.row.create_time*1000 | dateFormat}}</template></el-table-column><el-table-column label="操作" ><template><el-button type="primary" icon="el-icon-edit" size="mini" @click="showBox"></el-button><el-button type="success" icon="el-icon-location" size="mini" @click="showProgressBox"></el-button></template></el-table-column></el-table><!-- 分页区域 --><el-pagination@size-change="handleSizeChange"@current-change="handleCurrentChange":current-page="queryInfo.pagenum":page-sizes="[5, 10, 15, 20]":page-size="queryInfo.pagesize"layout="total, sizes, prev, pager, next, jumper":total="total" background></el-pagination></el-card><!--修改地址的对话框--><el-dialogtitle="修改地址":visible.sync="addressVisible"width="50%" @close="addressDialogClosed"><!--内容主体区域--><el-form :model="addressForm" :rules="addressFormRules" ref="addressFormRef" label-width="100px" ><el-form-item label="省市区/县" prop="address1"><el-cascader :options="cityData" v-model="addressForm.address1"></el-cascader></el-form-item><el-form-item label="详细地址" prop="address2"><el-input v-model="addressForm.address2"></el-input></el-form-item></el-form><!--底部区域--><span slot="footer" class="dialog-footer"><el-button @click="addressVisible = false">取 消</el-button><el-button type="primary" @click="addressVisible = false">确 定</el-button></span></el-dialog><!--物流进度的对话框--><el-dialogtitle="物理进度":visible.sync="progressVisible"width="50%" ><!-- 时间线 --><el-timeline ><el-timeline-itemv-for="(activity, index) in progressInfo":key="index":timestamp="activity.time">{{activity.context}}</el-timeline-item></el-timeline></el-dialog></div>
</template><script>
import cityData from './citydata.js'
export default {data () {return {cityData,// 订单查询对象queryInfo:{query: '',pagenum: 1,pagesize: 10},// 总数total: 0,// 订单列表orderList: [],// 控制修改地址对话框的显示与隐藏addressVisible: false,// 控制物流进度对话框的显示与隐藏progressVisible: false,// 地址表单addressForm:{address1: [],address2: ''},// 添加表单的验证规则对象addressFormRules: {address1: [{required: true,message: '请选择省市区/县',trigger: 'blur'},],address2: [{required: true,message: '请输入详细地址',trigger: 'blur'},],},//物流信息列表progressInfo: []}},created(){// 获取订单数据列表this.getOrderList()},methods: {// 获取订单数据列表async getOrderList(){const {data:res} = await this.$http.get('orders', {params: this.queryInfo})if(res.meta.status !== 200) return this.$message.error('获取订单列表失败!')// console.log(res.data)this.orderList = res.data.goodsthis.total = res.data.total},// 监听当前页数变化的事件handleSizeChange(newSize){this.queryInfo.pagesize = newSizethis.getOrderList()},// 监听当前页码变化的事件handleCurrentChange(newPage){this.queryInfo.pagenum = newPagethis.getOrderList()},// 展示修改地址的对对话框showBox(){this.addressVisible = true},// 监听修改地址对话框的关闭事件addressDialogClosed(){this.$refs.addressFormRef.resetFields()},// 展示物流进度async showProgressBox(){const {data:res} = await this.$http.get('/kuaidi/804909574412544580')if(res.meta.status !== 200) return this.$message.error('获取物流进度失败!')this.progressInfo = res.datathis.progressVisible = trueconsole.log(this.progressInfo)}},
}</script>
<style lang='less' scoped>
// 导入timeline相样式
@import '../../plugins/timeline/timeline.css';
@import '../../plugins/timeline-item/timeline-item.css';.el-cascader{width: 100%;
}</style>

3、结束语

至此,我们的功能就完成了!

Vue全家桶开发电商管理系统码云地址,欢迎一起来学习~

https://gitee.com/Chocolate666/vue_shop


最后,看完本篇博客后,觉得挺有帮助的话,可以继续查看专栏其它内容嗷,一起来学习Vue吧~

点击进入Vue❤学习专栏~

学如逆水行舟,不进则退

2020 Vue 基于Element-UI开发 手动导入并使用Timeline组件(附组件文件)查看快递信息相关推荐

  1. vue基于element ui走马灯卡片化的图片轮播

    1.安装依赖 npm i element-ui -S 2.代码 <template><div><el-carousel :interval="4000" ...

  2. 【Vue】 element ui 引入第三方图标

    最近一个项目用到 vue 和 element ui开发前端.使用element ui自带的icon太少,所以引入第三方的.截止目前为止国内外网络上的相关教程我搜索到没超过5篇,而且都不详细,即使全部阅 ...

  3. 一个基于.Net Core+Vue+Element Ui开发的OA系统

    今天给大家推荐一个开源OA系统. 项目简介 这是一个基于.Net Core构建的简单.跨平台OA系统.企业可以利用它进行信息化建设,框架提供了用户管理.权限管理.表引擎.流程引擎.BI智能报表,可以大 ...

  4. Node mysql mvc vue_net MVC +Vue.js+Element UI 笔记

    最近项目需求,要在MVC里用Vue 与 Element UI,故而做个笔记来记录一些遇到的问题和处理思路 (方式比较麻瓜,如果不是临时用的话,建议还是学一下Vue-cli,新项目还是老老实实前后端分离 ...

  5. vue开源Element UI表单设计及代码生成器

    1 可视化设计器 设计器基于Element UI ,可通过点击或拖拽的方式设计基本表单, 设计器生成的代码可直接运行在基于 Element 的 vue 项目中. github仓库   https:// ...

  6. vue3.0 结合element ui 开发后台ui框架

    vue3.0 结合element ui 开发后台ui框架,根据element ui 官网步骤安装出现报错信息,解决方法: 按照element UI官网步骤, 启动vue 3.0项目:npm run s ...

  7. vue基于element实现批量删除

    前言 当数据量庞大时,批量对数据进行操作在后台管理系统中再常见不过了,今天用 vue 基于 element 实现批量删除. 实现思路 实现这个操作的关键就在于表格需要绑定 @selection-cha ...

  8. 关于vue.js element ui 表单验证 this.$refs[formName].validate()的问题

      方法使用前需了解: 来自"和"小编的小提示: 首先打印一下this.$refs[formName],检查是否拿到了正确的需要验证的form. 其次在拿到了正确的form后,检查 ...

  9. Vue安装element ui踩坑

    在vue安装element ui 的过程中报了许多错误,慢慢踩坑,希望能帮到各位 1.  输入  vue add element    输入 y y zh-CN 如果报错  ERROR  comman ...

最新文章

  1. 03系统多界面_【part two】操作说明——系统管理、公司管理、客户管理
  2. python画散点图分布-python画图汇总(持续更新)
  3. 解决python调用TensorFlow时出现FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecate
  4. 取消myeclipse2017的Dashboard页面
  5. 第 1-6 课:玩转时间 + 面试题
  6. 关于IIS的IUSER和IWAM帐户
  7. 基本算法——康托展开与逆康托展开
  8. 依赖注入(DI)入门
  9. 修改Win7的默认文件夹排列方式
  10. 第四天:使用 session cookie redis完善登录验证及登录路由
  11. 2022年工作室暑期培训
  12. matlab rf建模实例,[程序源代码]MATLAB在射频电路设计中的应用
  13. 计算机桌面图片打不开显示内存不足,电脑上的windows图片查看器提示内存不足如何解决...
  14. 故障树分析法MATLAB,故障树分析(FTA)方法及其基于VC的软件设计的研究
  15. 为何现在欠钱的人,都不爱还钱,太气人了...
  16. 【软件工程】------软件开发
  17. 【Autopsy数字取证篇】Autopsy数字取证软件的下载安装与优化配置
  18. html------轮播图
  19. 解决线程安全问题的两种办法
  20. C#、打开basler相机

热门文章

  1. 项目四:使用SparkSQL开发的简易推荐系统
  2. 什么叫地推模式_区域商家的地推模式以及推广方案
  3. 基于python的房地产数据分析_基于Python的数据分析
  4. 视频编辑器-MovieMator简洁使用-功能和快速入门-创建项目、导入和导出
  5. 让电商运营10倍提效的自动化工具,你get了吗?
  6. 在斩获“数据金羊毛”的途中,易观造船现行,人称Argo号~
  7. 汽车启动档位,份4个
  8. 阿里云团队协作网盘Teambition之目录程序
  9. html点击弹出登录注册表单提交代码
  10. STM32使用RL_TCPNET网络协议栈的开发