使用element notification

This commit is contained in:
kuaifan 2021-12-22 17:49:44 +08:00
parent 376bcc4a0b
commit fe44c35406
7 changed files with 48 additions and 49 deletions

Binary file not shown.

Binary file not shown.

View File

@ -15,6 +15,7 @@ import MarkdownPreview from "./MDEditor/components/preview";
Vue.component('MarkdownPreview', MarkdownPreview) Vue.component('MarkdownPreview', MarkdownPreview)
import axios from "axios"; import axios from "axios";
import { Notification } from 'element-ui';
export default { export default {
name: 'AppDown', name: 'AppDown',
@ -50,54 +51,50 @@ export default {
let latestVersion = $A.leftDelete(data.tag_name.toLowerCase(), "v") let latestVersion = $A.leftDelete(data.tag_name.toLowerCase(), "v")
if (this.compareVersion(latestVersion, currentVersion) === 1) { if (this.compareVersion(latestVersion, currentVersion) === 1) {
// //
this.$Notice.close("app-down"); const h = this.$createElement;
this.$nextTick(() => { window.__appNotification && window.__appNotification.close();
this.$Notice.info({ window.__appNotification = Notification({
name: "app-down", title: this.$L("更新提示"),
title: this.$L("更新提示"), duration: 0,
duration: 0, position: "bottom-right",
onClose: () => { onClose: () => {
// this.repoStatus = 2;
this.repoStatus = 2; },
}, message: h('span', [
render: h => { h('span', [
return h('span', [ h('span', this.$L('发现新版本') + ": "),
h('span', [ h('Tag', {
h('span', this.$L('发现新版本') + ": "), props: {
h('Tag', { color: 'volcano'
props: { }
color: 'volcano' }, data.tag_name)
} ]),
}, data.tag_name) h('MarkdownPreview', {
]), class: 'common-app-down-body',
h('MarkdownPreview', { props: {
class: 'common-app-down-body', initialValue: data.body
props: { }
initialValue: data.body }),
} h('div', {
}), class: 'common-app-down-link',
h('div', { on: {
class: 'common-app-down-link', click: () => {
on: { this.openExternal(data.html_url);
click: () => { }
this.openExternal(data.html_url); },
} }, [
}, h('Icon', {
}, [ props: {
h('Icon', { type: 'md-download'
props: { },
type: 'md-download' style: {
}, marginRight: '5px'
style: { }
marginRight: '5px' }),
} h('span', this.$L('立即升级'))
}), ]),
h('span', this.$L('立即升级')) ])
]), });
])
}
});
})
} }
}, },
deep: true deep: true

View File

@ -25,7 +25,7 @@
} }
.common-app-down-body { .common-app-down-body {
max-height: 168px; max-height: 175px;
overflow: auto; overflow: auto;
margin: 18px 0; margin: 18px 0;
.markdown-preview { .markdown-preview {

View File

@ -6,12 +6,14 @@ $--dropdown-menuItem-hover-fill: #f4f5f7;
$--dropdown-menuItem-hover-color: #606266; $--dropdown-menuItem-hover-color: #606266;
@import "~element-ui/packages/theme-chalk/src/common/transition"; @import "~element-ui/packages/theme-chalk/src/common/transition";
@import "~element-ui/packages/theme-chalk/src/icon";
@import "~element-ui/packages/theme-chalk/src/avatar"; @import "~element-ui/packages/theme-chalk/src/avatar";
@import "~element-ui/packages/theme-chalk/src/tooltip"; @import "~element-ui/packages/theme-chalk/src/tooltip";
@import "~element-ui/packages/theme-chalk/src/popover"; @import "~element-ui/packages/theme-chalk/src/popover";
@import "~element-ui/packages/theme-chalk/src/dropdown"; @import "~element-ui/packages/theme-chalk/src/dropdown";
@import "~element-ui/packages/theme-chalk/src/dropdown-menu"; @import "~element-ui/packages/theme-chalk/src/dropdown-menu";
@import "~element-ui/packages/theme-chalk/src/dropdown-item"; @import "~element-ui/packages/theme-chalk/src/dropdown-item";
@import "~element-ui/packages/theme-chalk/src/notification";
.el-dropdown-menu__item { .el-dropdown-menu__item {