• html页面直接使用elementui Plus时间线 + vue3


    直接上效果图

    案例源码 

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Title</title>
    6. <script src="../js/vue3.3.8/vue.global.js"></script>
    7. <link rel="stylesheet" href="../js/elementPlus/index.css">
    8. <script src="../js/elementPlus/index.full.js"></script>
    9. <script src="../js/elementPlus/icons-vue.js"></script>
    10. </head>
    11. <style>
    12. .processBox {
    13. background-color: #fff;
    14. height: 210px;
    15. }
    16. .timeline {
    17. display: flex;
    18. flex-direction: row;
    19. width: 95%;
    20. margin: auto 80px;
    21. }
    22. .lineitem {
    23. transform: translateX(50%);
    24. width: 25%;
    25. }
    26. .title {
    27. font-size: 16px;
    28. font-weight: 600;
    29. padding-left:32px;
    30. padding-top: 16px;
    31. }
    32. .el-timeline-item__tail {
    33. border-left: none;
    34. border-top: 2px solid #e4e7ed;
    35. width: 100%;
    36. position: absolute;
    37. top: 6px;
    38. }
    39. .el-timeline-item__wrapper {
    40. padding-left: 0;
    41. position: absolute;
    42. top: 20px;
    43. transform: translateX(-50%);
    44. text-align: center;
    45. }
    46. .active .el-timeline-item__node {
    47. background-color: #409eff;
    48. }
    49. .active .el-timeline-item__tail {
    50. border-top: 2px solid #409eff !important;
    51. }
    52. </style>
    53. <body>
    54. <div id="app">
    55. <div class="processBox">
    56. <div class="title">工程进度</div>
    57. <el-divider></el-divider>
    58. <div class="timelineProcessBox">
    59. <el-timeline class="timeline">
    60. <el-timeline-item
    61. class="lineitem"
    62. :class="activity.done ? 'active' : 'inactive'"
    63. v-for="(activity, index) in activities"
    64. :key="index"
    65. :timestamp="activity.time"
    66. >
    67. <span style="display: flex; flex-direction: column">
    68. <span style="margin: 10px 0; font-size: 16px">
    69. {{ activity.content }}
    70. </span>
    71. <span style="color: #8c8c8c; font-size: 14px">
    72. {{ activity.people }}
    73. </span>
    74. </span>
    75. </el-timeline-item>
    76. </el-timeline>
    77. </div>
    78. </div>
    79. </div>
    80. <script>
    81. const {createApp, ref, reactive, computed} = Vue
    82. const app = createApp({ //createApp:vue的工厂函数,不是vue2 的构造函数
    83. setup() {
    84. const activities = ref([
    85. {
    86. content: '立项阶段',
    87. time: '2018-04-12 20:46',
    88. people: '小王也',
    89. done: true,
    90. },
    91. {
    92. content: '需求-开发阶段',
    93. people: '狐灵国王',
    94. done: false,
    95. time: '2018-04-03 20:46',
    96. },
    97. {
    98. content: '验收阶段',
    99. done: false,
    100. people: '熊大',
    101. time: '2018-04-03 20:46',
    102. },
    103. {
    104. content: '结算阶段',
    105. people: '',
    106. done: false,
    107. time: '',
    108. }
    109. ])
    110. const message = ref('Hello vue!') //创建一个包含响应式数据的引用对象(reference对象,简称ref对象)。赋值:message.value=newvalue
    111. return {//返回的是一个:promise, 一个对象,一个字段,等于vue2:data:{return{}}
    112. message,
    113. activities
    114. }
    115. },
    116. })
    117. app.use(ElementPlus)
    118. app.mount('#app')
    119. </script>
    120. </body>
    121. </html>

     vue3, element plus下载

     

    //element plus的字体库可以在element ui发布下下载

    UNPKG - element-ui

    参考:

    Jquery 老项目引入vue,elementui-CSDN博客

  • 相关阅读:
    【CSS常见的选择器】介绍
    【Java 进阶篇】JSP EL 详解
    GPT-4o:引领人工智能新时代的强大引擎
    蓝桥杯官网填空题(矩形切割)
    【毕业季】聊聊我的四年前端职业生涯
    【nlohmann/json】树节点的序列化和反序列化
    计算机网络---TCP
    Java“牵手”京东商品详情数据,京东商品详情API接口,京东API接口申请指南
    Java-矩阵(自动导航-越过障碍)
    360°全景环视「升级战」激化,前装供应链洗牌加速进行
  • 原文地址:https://blog.csdn.net/LlanyW/article/details/134526661