浏览代码

fix: 修正全局消息组件新消息通知时长变短的bug

ChenYangfan 6 年之前
父节点
当前提交
a1275fd70a

+ 7 - 7
src/App.vue

@@ -46,12 +46,12 @@ export default {
 
 @font-face {
   font-family: 'iconfont';  /* project id 1598214 */
-  src: url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.eot');
-  src: url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.eot?#iefix') format('embedded-opentype'),
-  url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.woff2') format('woff2'),
-  url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.woff') format('woff'),
-  url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.ttf') format('truetype'),
-  url('//at.alicdn.com/t/font_1598214_pbdwuenk7jg.svg#iconfont') format('svg');
+  src: url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.eot');
+  src: url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.eot?#iefix') format('embedded-opentype'),
+  url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.woff2') format('woff2'),
+  url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.woff') format('woff'),
+  url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.ttf') format('truetype'),
+  url('//at.alicdn.com/t/font_1598214_jzjp1vaj3t.svg#iconfont') format('svg');
 }
 
 body {
@@ -96,7 +96,7 @@ body {
   background-color: lighten($theme-blue, 30);
   color: $theme-blue;
   font-size: 12px;
-  padding: 4px 12px;
+  padding: 2px 8px;
   margin-left: 4px;
   border-radius: 8px;
   vertical-align: middle;

+ 26 - 0
src/components/CommentToolBar.vue

@@ -0,0 +1,26 @@
+<template>
+  <div>
+    <icon :unicode="iconMap['delete']" title="删除本条讨论"></icon>
+    <icon :unicode="iconMap['reply']" title="回复本条讨论"></icon>
+    <icon :unicode="iconMap['send_to_top']" title="置顶本条消息"></icon>
+    <icon :unicode="iconMap['delete']" title="删除本条讨论"></icon>
+  </div>
+</template>
+
+<script>
+import Icon from '@/components/Icon'
+import iconMap from '@/utils/icon-map'
+
+export default {
+  components: { Icon },
+  data () {
+    return {
+      iconMap
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+
+</style>

+ 7 - 3
src/components/GlobalMessage.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="message-wrapper" :class="type" v-if="show">
+  <div class="message-wrapper global-message" :class="type" v-if="show">
     <div class="message">
       <span class="icon warning">{{iconMap[type] ? iconMap[type] : iconMap['info']}}</span>
       <span class="message-content">{{ message }}</span>
@@ -17,7 +17,8 @@ export default {
   data () {
     return {
       iconMap: iconMap,
-      show: false
+      show: false,
+      timer: null
     }
   },
   computed: {
@@ -31,9 +32,12 @@ export default {
     message (newMessage) {
       if (newMessage) {
         this.show = false
+        // eslint-disable-next-line no-unused-expressions
+        this.timer ? clearTimeout(this.timer) : ''
+        this.timer = null
         this.$nextTick(() => {
           this.show = true
-          setTimeout(() => {
+          this.timer = setTimeout(() => {
             this.show = false
             this.$store.commit(USE_MESSAGE)
           }, 5000)

+ 5 - 1
src/utils/icon-map.js

@@ -18,7 +18,11 @@ const iconMap = {
   'quiz': '\ue6d1',
   'down': '\ue7db',
   'up': '\ue7d9',
-  'slide_show': '\ue74e'
+  'slide_show': '\ue74e',
+  'put_on_top': '\ue779',
+  'reply': '\ue76f',
+  'delete': '\ue67e',
+  'send': '\ue763'
 }
 
 export default iconMap

+ 0 - 1
src/views/teacher/components/CreateNewCourse.vue

@@ -50,7 +50,6 @@ export default {
         this.$setInfoMessage(this.message)
         return
       }
-
       createCourse({ name: this.name, bio: this.bio, code: this.code }).then(res => {
         this.$setSuccessMessage('创建课程成功')
       }).catch(err => {