Skip to content

Commit 4b12c3f

Browse files
committed
优化
1 parent 4b496f5 commit 4b12c3f

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

docs/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<!DOCTYPE html><html lang=zh_CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/vue-blog/favicon.ico><title>vue-blog</title><script src="https://pv.sohu.com/cityjson?ie=utf-8"></script><link href=/vue-blog/css/group-about.c1fac219.css rel=prefetch><link href=/vue-blog/css/group-about~group-home~group-list.db8a14a4.css rel=prefetch><link href=/vue-blog/css/group-admin.12d3407c.css rel=prefetch><link href=/vue-blog/css/group-detail.fc22b071.css rel=prefetch><link href=/vue-blog/css/group-editor.dfb7a40f.css rel=prefetch><link href=/vue-blog/css/group-home.1ea2f575.css rel=prefetch><link href=/vue-blog/css/group-list.e0aa04df.css rel=prefetch><link href=/vue-blog/css/group-signIn.f23c9712.css rel=prefetch><link href=/vue-blog/js/group-about.e6f09ea1.js rel=prefetch><link href=/vue-blog/js/group-about~group-home~group-list.cc0fc480.js rel=prefetch><link href=/vue-blog/js/group-admin.87b1b162.js rel=prefetch><link href=/vue-blog/js/group-detail.5d4c7ef0.js rel=prefetch><link href=/vue-blog/js/group-editor.4154fb2c.js rel=prefetch><link href=/vue-blog/js/group-home.bd715d23.js rel=prefetch><link href=/vue-blog/js/group-list.0e92177a.js rel=prefetch><link href=/vue-blog/js/group-signIn.495d1c57.js rel=prefetch><link href=/vue-blog/css/app.fd9e129a.css rel=preload as=style><link href=/vue-blog/css/chunk-vendors.8eacee8b.css rel=preload as=style><link href=/vue-blog/js/app.81650d33.js rel=modulepreload as=script><link href=/vue-blog/js/chunk-vendors.1510f57c.js rel=modulepreload as=script><link href=/vue-blog/css/chunk-vendors.8eacee8b.css rel=stylesheet><link href=/vue-blog/css/app.fd9e129a.css rel=stylesheet></head><body><noscript><strong>We're sorry but vue-blog doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script type=module src=/vue-blog/js/chunk-vendors.1510f57c.js></script><script type=module src=/vue-blog/js/app.81650d33.js></script><script>!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script src=/vue-blog/js/chunk-vendors-legacy.a9de3e9c.js nomodule></script><script src=/vue-blog/js/app-legacy.15bb7c21.js nomodule></script></body></html>
1+
<!DOCTYPE html><html lang=zh_CN><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=/vue-blog/favicon.ico><title>vue-blog</title><script src="https://pv.sohu.com/cityjson?ie=utf-8"></script><link href=/vue-blog/css/group-about.c1fac219.css rel=prefetch><link href=/vue-blog/css/group-about~group-home~group-list.db8a14a4.css rel=prefetch><link href=/vue-blog/css/group-admin.12d3407c.css rel=prefetch><link href=/vue-blog/css/group-detail.9192c4aa.css rel=prefetch><link href=/vue-blog/css/group-editor.dfb7a40f.css rel=prefetch><link href=/vue-blog/css/group-home.1ea2f575.css rel=prefetch><link href=/vue-blog/css/group-list.e0aa04df.css rel=prefetch><link href=/vue-blog/css/group-signIn.f23c9712.css rel=prefetch><link href=/vue-blog/js/group-about.e6f09ea1.js rel=prefetch><link href=/vue-blog/js/group-about~group-home~group-list.cc0fc480.js rel=prefetch><link href=/vue-blog/js/group-admin.87b1b162.js rel=prefetch><link href=/vue-blog/js/group-detail.ff1d12b3.js rel=prefetch><link href=/vue-blog/js/group-editor.4154fb2c.js rel=prefetch><link href=/vue-blog/js/group-home.bd715d23.js rel=prefetch><link href=/vue-blog/js/group-list.0e92177a.js rel=prefetch><link href=/vue-blog/js/group-signIn.495d1c57.js rel=prefetch><link href=/vue-blog/css/app.fd9e129a.css rel=preload as=style><link href=/vue-blog/css/chunk-vendors.8eacee8b.css rel=preload as=style><link href=/vue-blog/js/app.80adf2ba.js rel=modulepreload as=script><link href=/vue-blog/js/chunk-vendors.1510f57c.js rel=modulepreload as=script><link href=/vue-blog/css/chunk-vendors.8eacee8b.css rel=stylesheet><link href=/vue-blog/css/app.fd9e129a.css rel=stylesheet></head><body><noscript><strong>We're sorry but vue-blog doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script type=module src=/vue-blog/js/chunk-vendors.1510f57c.js></script><script type=module src=/vue-blog/js/app.80adf2ba.js></script><script>!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script src=/vue-blog/js/chunk-vendors-legacy.a9de3e9c.js nomodule></script><script src=/vue-blog/js/app-legacy.f7df0114.js nomodule></script></body></html>

src/views/Detail.vue

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<prev-and-next v-if="getResult" :prevInfo="prevInfo" :nextInfo="nextInfo"></prev-and-next>
3232
</div>
3333
<div class="detail-content">
34-
<div class="article-content markdown-body" v-html="info.articleContentHtml"></div>
34+
<div class="article-content markdown-body" v-html="handleDetail"></div>
3535
</div>
3636
<prev-and-next v-if="getResult" :prevInfo="prevInfo" :nextInfo="nextInfo" style="padding: 15px;"></prev-and-next>
3737
</el-main>
@@ -107,6 +107,27 @@ export default {
107107
},
108108
metaDescription () {
109109
return `${this.title} | ${process.env.VUE_APP_description}`
110+
},
111+
handleDetail () {
112+
let res = this.info.articleContentHtml
113+
if (!res) return false
114+
const aReg = /<a.*href="(.*)">(.*?)<\/a>/gi
115+
let regArray
116+
const aArray = []
117+
while ((regArray = aReg.exec(res)) !== null) {
118+
aArray.push(regArray)
119+
}
120+
for (let index = 0, length = aArray.length; index < length; index++) {
121+
const element = aArray[index]
122+
if (element && element.length === 3) {
123+
if (element[1].indexOf('http') === 0) {
124+
const svg = '<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg>'
125+
const html = `<a href="${element[1]}" target="_blank">${element[2]}${svg}</a>`
126+
res = res.replace(element[0], html)
127+
}
128+
}
129+
}
130+
return res
110131
}
111132
},
112133
metaInfo () {
@@ -216,6 +237,15 @@ export default {
216237
width: auto !important;
217238
max-width: 100% !important;
218239
}
240+
h1,
241+
h2,
242+
h3,
243+
h4,
244+
h5,
245+
h6 {
246+
margin: -50px 0 0;
247+
padding: 65px 0 15px;
248+
}
219249
}
220250
}
221251
.el-page-header {

0 commit comments

Comments
 (0)