Merge branch 'master' of github.com:doocs/md into feature-bug-fix

This commit is contained in:
JimQing 2020-07-04 16:44:34 +08:00
commit fc6d5e1d00
4 changed files with 52 additions and 48 deletions

View File

@ -18,6 +18,7 @@
Markdown 文档自动即时渲染为微信图文,让你不再为微信文章排版而发愁!只要你会基本的 Markdown 语法,就能做出一篇样式简洁而又美观大方的微信图文。 Markdown 文档自动即时渲染为微信图文,让你不再为微信文章排版而发愁!只要你会基本的 Markdown 语法,就能做出一篇样式简洁而又美观大方的微信图文。
## 在线编辑器地址 ## 在线编辑器地址
- Gitee Pageshttps://doocs.gitee.io/md - Gitee Pageshttps://doocs.gitee.io/md
- GitHub Pageshttps://doocs.github.io/md - GitHub Pageshttps://doocs.github.io/md

View File

@ -1,42 +1,42 @@
{ {
"name": "vue-md", "name": "vue-md",
"version": "1.3.2", "version": "1.3.3",
"private": true, "private": true,
"homepage": "https://doocs.gitee.io/md", "homepage": "https://doocs.gitee.io/md",
"scripts": { "scripts": {
"serve": "vue-cli-service serve", "serve": "vue-cli-service serve",
"build": "vue-cli-service build", "build": "vue-cli-service build",
"lint": "vue-cli-service lint", "lint": "vue-cli-service lint",
"test:unit": "vue-cli-service test:unit" "test:unit": "vue-cli-service test:unit"
}, },
"dependencies": { "dependencies": {
"axios": "^0.19.1", "axios": "^0.19.1",
"codemirror": "^5.50.2", "codemirror": "^5.50.2",
"core-js": "^3.4.4", "core-js": "^3.4.4",
"element-ui": "^2.13.0", "element-ui": "^2.13.0",
"jquery": "^3.4.1", "jquery": "^3.4.1",
"juice": "^6.0.0", "juice": "^6.0.0",
"markdown": "^0.5.0", "markdown": "^0.5.0",
"marked": "^0.8.0", "marked": "^0.8.0",
"prettier": "^2.0.5", "prettier": "^2.0.5",
"prettify": "^0.1.7", "prettify": "^0.1.7",
"vue": "^2.6.10", "vue": "^2.6.10",
"vue-router": "^3.1.3", "vue-router": "^3.1.3",
"vuex": "^3.1.2" "vuex": "^3.1.2"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "^4.1.0", "@vue/cli-plugin-babel": "^4.1.0",
"@vue/cli-plugin-eslint": "^4.1.0", "@vue/cli-plugin-eslint": "^4.1.0",
"@vue/cli-plugin-unit-jest": "^4.1.0", "@vue/cli-plugin-unit-jest": "^4.1.0",
"@vue/cli-service": "^4.1.0", "@vue/cli-service": "^4.1.0",
"@vue/eslint-config-standard": "^4.0.0", "@vue/eslint-config-standard": "^4.0.0",
"@vue/test-utils": "1.0.0-beta.29", "@vue/test-utils": "1.0.0-beta.29",
"babel-eslint": "^10.0.3", "babel-eslint": "^10.0.3",
"eslint": "^5.16.0", "eslint": "^5.16.0",
"eslint-plugin-vue": "^5.0.0", "eslint-plugin-vue": "^5.0.0",
"less-loader": "^6.0.0", "less-loader": "^6.0.0",
"node-sass": "^4.12.0", "node-sass": "^4.12.0",
"sass-loader": "^8.0.0", "sass-loader": "^8.0.0",
"vue-template-compiler": "^2.6.10" "vue-template-compiler": "^2.6.10"
} }
} }

View File

@ -58,7 +58,7 @@
<el-tooltip class="item" :effect="effect" content="自定义CSS样式" placement="left"> <el-tooltip class="item" :effect="effect" content="自定义CSS样式" placement="left">
<el-button :type="btnType" plain size="medium" icon="el-icon-setting" @click="customStyle"></el-button> <el-button :type="btnType" plain size="medium" icon="el-icon-setting" @click="customStyle"></el-button>
</el-tooltip> </el-tooltip>
<el-button :type="btnType" plain size="medium" @click="copy">复制</el-button> <el-button :type="btnType" plain size="medium" @click="copy" placement="bottom-start">复制</el-button>
<el-button :type="btnType" plain size="medium" class="about" @click="$emit('showAboutDialog')">关于</el-button> <el-button :type="btnType" plain size="medium" class="about" @click="$emit('showAboutDialog')">关于</el-button>
<el-tooltip content="夜间模式" placement="bottom-start"> <el-tooltip content="夜间模式" placement="bottom-start">
<div class="mode__switch" v-if="!nightMode" @click="themeChanged"></div> <div class="mode__switch" v-if="!nightMode" @click="themeChanged"></div>
@ -171,13 +171,13 @@ export default {
return false; return false;
}, },
// //
copy() { copy(e) {
this.$emit('startCopy'); this.$emit('startCopy');
setTimeout(() => { setTimeout(() => {
let clipboardDiv = document.getElementById('output');
solveWeChatImage(); solveWeChatImage();
fixCodeWhiteSpace(); fixCodeWhiteSpace();
this.setOutput(solveHtml()); this.setHtml(solveHtml());
let clipboardDiv = document.getElementById('output');
clipboardDiv.focus(); clipboardDiv.focus();
window.getSelection().removeAllRanges(); window.getSelection().removeAllRanges();
@ -187,9 +187,10 @@ export default {
range.setEndAfter(clipboardDiv.lastChild); range.setEndAfter(clipboardDiv.lastChild);
window.getSelection().addRange(range); window.getSelection().addRange(range);
document.execCommand('copy'); document.execCommand('copy');
range.setStartBefore(clipboardDiv.firstChild); window.getSelection().removeAllRanges()
range.setEndAfter(clipboardDiv.firstChild);
fixCodeWhiteSpace('normal'); fixCodeWhiteSpace('normal');
clipboardDiv.innerHTML = this.output;
// //
this.$notify({ this.$notify({
showClose: true, showClose: true,
@ -201,6 +202,7 @@ export default {
this.$emit('refresh'); this.$emit('refresh');
this.$emit('endCopy'); this.$emit('endCopy');
}, 350); }, 350);
e.target.blur();
}, },
// CSS // CSS
async customStyle () { async customStyle () {

View File

@ -16,6 +16,7 @@ Vue.use(Vuex)
const state = { const state = {
wxRenderer: null, wxRenderer: null,
output: '', output: '',
html: '',
editor: null, editor: null,
cssEditor: null, cssEditor: null,
currentFont: '', currentFont: '',
@ -25,8 +26,8 @@ const state = {
nightMode: false nightMode: false
}; };
const mutations = { const mutations = {
setOutput(state, data) { setHtmL(state, data) {
state.output = data; state.html = data;
}, },
setEditorValue(state, data) { setEditorValue(state, data) {
state.editor.setValue(data) state.editor.setValue(data)