From 0fed69f367899c6f5d3321e5cb86b84faa08d2e9 Mon Sep 17 00:00:00 2001 From: Pan <panfree23@gmail.com> Date: Wed, 13 Feb 2019 16:34:03 +0800 Subject: [PATCH] perf[Screenfull]: refactor screenfull component --- package.json | 2 +- src/components/Screenfull/index.vue | 6 ++++-- src/icons/svg/exit-fullscreen.svg | 1 + src/icons/svg/{screenfull.svg => fullscreen.svg} | 0 src/lang/en.js | 1 - src/lang/es.js | 1 - src/lang/zh.js | 1 - src/views/layout/components/Navbar.vue | 4 +--- 8 files changed, 7 insertions(+), 9 deletions(-) create mode 100644 src/icons/svg/exit-fullscreen.svg rename src/icons/svg/{screenfull.svg => fullscreen.svg} (100%) diff --git a/package.json b/package.json index 5854b8d6..77c25de4 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "mockjs": "1.0.1-beta3", "normalize.css": "7.0.0", "nprogress": "0.2.0", - "screenfull": "3.3.3", + "screenfull": "4.0.0", "showdown": "1.8.6", "sortablejs": "1.7.0", "tui-editor": "1.2.7", diff --git a/src/components/Screenfull/index.vue b/src/components/Screenfull/index.vue index 7f8e6fc3..8e7bcba4 100644 --- a/src/components/Screenfull/index.vue +++ b/src/components/Screenfull/index.vue @@ -1,6 +1,6 @@ <template> <div> - <svg-icon class-name="screenfull-icon" icon-class="screenfull" @click="click" /> + <svg-icon :icon-class="isFullscreen?'exit-fullscreen':'fullscreen'" @click="click" /> </div> </template> @@ -23,7 +23,9 @@ export default { }) return false } - screenfull.toggle() + screenfull.toggle().then(() => { + this.isFullscreen = screenfull.isFullscreen + }) } } } diff --git a/src/icons/svg/exit-fullscreen.svg b/src/icons/svg/exit-fullscreen.svg new file mode 100644 index 00000000..485c128b --- /dev/null +++ b/src/icons/svg/exit-fullscreen.svg @@ -0,0 +1 @@ +<svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z"/></svg> \ No newline at end of file diff --git a/src/icons/svg/screenfull.svg b/src/icons/svg/fullscreen.svg similarity index 100% rename from src/icons/svg/screenfull.svg rename to src/icons/svg/fullscreen.svg diff --git a/src/lang/en.js b/src/lang/en.js index ef98af4b..05b34598 100644 --- a/src/lang/en.js +++ b/src/lang/en.js @@ -69,7 +69,6 @@ export default { logOut: 'Log Out', dashboard: 'Dashboard', github: 'Github', - screenfull: 'Screenfull', theme: 'Theme', size: 'Global Size' }, diff --git a/src/lang/es.js b/src/lang/es.js index ed71fc15..8575d382 100755 --- a/src/lang/es.js +++ b/src/lang/es.js @@ -69,7 +69,6 @@ export default { logOut: 'Salir', dashboard: 'Panel de control', github: 'Github', - screenfull: 'Pantalla completa', theme: 'Tema', size: 'Tamaño global' }, diff --git a/src/lang/zh.js b/src/lang/zh.js index 7da0ccee..1fd18355 100644 --- a/src/lang/zh.js +++ b/src/lang/zh.js @@ -69,7 +69,6 @@ export default { logOut: '退出登录', dashboard: '首页', github: '项目地å€', - screenfull: 'å…¨å±', theme: 'æ¢è‚¤', size: '布局大å°' }, diff --git a/src/views/layout/components/Navbar.vue b/src/views/layout/components/Navbar.vue index dcb09ec1..5c3bcda4 100644 --- a/src/views/layout/components/Navbar.vue +++ b/src/views/layout/components/Navbar.vue @@ -10,9 +10,7 @@ <error-log class="errLog-container right-menu-item hover-effect"/> - <el-tooltip :content="$t('navbar.screenfull')" effect="dark" placement="bottom"> - <screenfull class="right-menu-item hover-effect"/> - </el-tooltip> + <screenfull class="right-menu-item hover-effect"/> <el-tooltip :content="$t('navbar.size')" effect="dark" placement="bottom"> <size-select class="right-menu-item hover-effect"/> -- GitLab