src/assets/md.less | ●●●●● patch | view | raw | blame | history | |
src/components/group/MyModal.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/box-new-article.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/box10-add.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/box18-photoShow.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/box2-class.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/box3-archive.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/mdDetail.vue | ●●●●● patch | view | raw | blame | history | |
src/components/mini/tagInfo.vue | ●●●●● patch | view | raw | blame | history | |
src/components/swichLabel/edit.vue | ●●●●● patch | view | raw | blame | history | |
src/components/swichLabel/main1-home.vue | ●●●●● patch | view | raw | blame | history | |
src/config/myConstant.js | ●●●●● patch | view | raw | blame | history | |
src/config/router.config.js | ●●●●● patch | view | raw | blame | history |
src/assets/md.less
@@ -20,13 +20,17 @@ p{ text-indent: 2rem; } img:hover{ transform: scale(1.05); //box-shadow: 0 0 4px rgba(0,0,0,0.5); -webkit-filter: drop-shadow(4px 4px 10px rgba(0,0,0,.5)); filter: drop-shadow(4px 4px 10px rgba(0,0,0,.5)); } img{ width: 150px; border-radius: 12px; margin: 10px auto; transition: all .5s; @@ -40,6 +44,7 @@ // -webkit-filter: drop-shadow(4px 4px 10px rgba(0,0,0,.5)); // filter: drop-shadow(4px 4px 10px rgba(0,0,0,.5)); // } h1, h2, h3, h4 { color: #111111; font-weight: 400; @@ -49,6 +54,7 @@ h1, h2, h3, h4, h5 { font-family: Georgia, Palatino, serif; } h1, h2, h3, h4, h5, p , dl{ margin-bottom: 16px; padding: 0; @@ -148,7 +154,6 @@ font-size: .85em; white-space: pre; background: 0 0; } code { @@ -177,7 +182,7 @@ blockquote { border-left:.5em solid #cfcfcf; //padding: 0 0 0 2em; margin-left:0; margin-left: 0em; } blockquote cite { font-size:14px; @@ -189,8 +194,12 @@ } blockquote p { text-indent: inherit; color: #666; } blockquote *{ margin-left: 10px; } hr { text-align: left; color: #999; src/components/group/MyModal.vue
@@ -1,7 +1,7 @@ <template> <div class="myModal" ref="test"> <a-modal v-drag-modal v-model="visible" title="日志添加" on-ok="handleOk" :bodyStyle="{'overflow':'overlay','maxHeight': '550px'}"> <div class="myModal"> <a-modal v-drag-modal ref="blogAddModal" v-model="visible" title="日志添加" on-ok="handleOk" :bodyStyle="{'overflow':'overlay','maxHeight': '550px'}" :destroyOnClose="destroyOnClose"> <template slot="footer"> <a-button key="reset" @click="reset" type="danger"> 擦掉重来 @@ -34,6 +34,7 @@ return { visible: false, loading: false, destroyOnClose: false, } }, methods: { @@ -61,6 +62,7 @@ let tempData = this.$refs.modalBox.form; var param = { introduce: tempData.introduce, secret: tempData.secret, title: tempData.title, articleTypeId: tempData.class, @@ -68,8 +70,9 @@ articleFileId: tempData.fileId, content: tempData.content, articleFileType: tempData.blogType, introduce: "", coverFileId: tempData.coverFile, pictureIds: tempData.pictureIds, videoIds: tempData.videoIds, publishDate: tempData.publishDate, isTop: tempData.top ? 1 : 0, topValue: tempData.sliderValue, @@ -91,8 +94,13 @@ // }, 3000); }, reset(e) { var res = this.$refs.modalBox.$refs.myForm.resetFields(); // var res = this.$refs.modalBox.$refs.myForm.resetFields(); //this.$refs.modalBox.reset(); this.destroyOnClose = true; this.visible = false; setTimeout(() => { this.destroyOnClose = false; }, 500) }, handleCancel(e) { this.visible = false; src/components/mini/box-new-article.vue
@@ -26,12 +26,11 @@ </a> <div class="article-meta-wrap" style="display: flex;"> <span class="post-meta-date"> <span class="post-meta-date" style="margin-right: 7px;"> <a-icon type="calendar" /> <span class="article-meta-label"></span> <span class="article-meta__categories"> {{publishDate}} </span> </span> <span class="article-meta__separator" style="margin: 0px 5px ;">|</span> <span class="article-meta"> <a-icon type="book" /> @@ -40,28 +39,18 @@ </a> <span v-if="jumpURL !=null && jumpURL!=''"> <span class="article-meta__separator" style="margin: 0px 3px 5px 0px ;">|</span> <span class="post-meta-date"> <a-icon type="share-alt" /> <a :href="jumpURL" target="_blank" class="no-underline"> 外链 </a> </span> </span> <span v-else-if="articleFileType==fileType.fileTypeTalking_9"> <span> <span class="article-meta__separator" style="margin: 0px 3px 5px 0px ;">|</span> <span class="post-meta-date"> <a-icon type="thunderbolt" />碎碎念 </span> </span> <a-icon type="thunderbolt" /> <span class="post-meta-date">碎碎念</span> </span> <span v-if="articleFileType==fileType.fileTypeVideo_3"> <span class="article-meta__separator" style="margin: 0px 3px ;"> | </span> <span class="post-meta-date"> <a-icon type="video-camera" /> <a @click="routerToPlatform()"> 视频 </a> <span class="post-meta-date"> <a @click="routerToPlatform()">视频</a> </span> </span> <!-- <a class="article-meta__categories" href="#"> {{tag}}</a> --> @@ -209,6 +198,8 @@ box-shadow: aliceblue; } // #recent-posts>.recent-post-item:not(:first-child) { // margin-top: 1rem; // } src/components/mini/box10-add.vue
@@ -1,5 +1,8 @@ <template> <div> <a-modal :visible="previewVisible" :footer="null" @cancel="handleCancel"> <img alt="example" style="width: 100%" :src="previewImage" /> </a-modal> <a-form-model ref="myForm" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol" :rules="rules"> <a-form-model-item label="认证" prop="secret"> <a-input v-model="form.secret" autocomplete='new-password' type="password" placeholder="口令"> @@ -26,7 +29,7 @@ @change="handleChange" :default-file-list="form.blogFileList" :beforeUpload="beforeUpload" :data="{'bucketName':bucketName.bucket_article}" accept=".md,.html,.htm,.txt"> <a-button> <a-icon type="upload" />限 markdown/html <a-icon type="upload" />限 md/html/txt </a-button> </a-upload> </a-form-model-item> @@ -58,7 +61,7 @@ </span> </a-form-model-item> <a-form-model-item label=" 日志主类型"> <a-form-model-item label=" 主类型"> <a-select v-model="form.blogType" mode="default" placeholder="" :getPopupContainer="getCalendarContainer()"> <a-select-option value="1"> @@ -82,6 +85,52 @@ </a-select> </a-form-model-item> <a-form-model-item label="引言" prop="introduce"> <a-input v-model="form.introduce" type="textarea" placeholder="限700字数" /> </a-form-model-item> <a-form-model-item label="封面"> <a-upload :customRequest="customRequest" name="file" :showUploadList="true" list-type="picture" :data="{'bucketName':bucketName.bucket_cover}" @change="handleChangeCoverFile" :default-file-list="form.coverFileList" :beforeUpload="beforeUploadCover" accept=".jpg,.png,.jpeg" @preview="handlePreview"> <!-- :disabled="form.coverFileList.length>=1" --> <a-button> <a-icon type="upload" />jpg/png/jpeg.. </a-button> </a-upload> <!-- <span class="myTip"> 自动转码,可以传高清图 </span> --> </a-form-model-item> <a-form-model-item label="图组"> <a-upload :customRequest="customRequest" name="file" :showUploadList="true" list-type="picture-card" :data="{'bucketName':bucketName.bucket_picture}" @change="handleChangePictureFile" :default-file-list="form.pictureList" :beforeUpload="beforeUploadPicture" accept=".jpg,.png,.jpeg" :multiple="true" @preview="handlePreview"> <a-button> <a-icon type="upload" />jpg/png/jpeg.. </a-button> </a-upload> </a-form-model-item> <a-form-model-item label="视频组"> <a-upload :customRequest="customRequest" name="file" :showUploadList="true" list-type="text" :data="{'bucketName':bucketName.bucket_video}" @change="handleChangeVideoFile" :default-file-list="form.videoList" :beforeUpload="beforeUploadVideo" :multiple="true" accept=".mp4"> <a-button> <a-icon type="upload" />mp4 </a-button> </a-upload> </a-form-model-item> <a-form-model-item label="定时"> <a-date-picker v-model="momentDate" show-time type="datetime" placeholder="发布时间" style="width: 100%;" :disabledDate="disabledDate" @change="formatDate" :getCalendarContainer="getCalendarContainer()" /> </a-form-model-item> <a-form-model-item label="标签"> <template v-for="(tag, index) in tags"> @@ -102,29 +151,6 @@ <a-tag v-else style="background: #fff; borderStyle: dashed;" @click="showInput"> <a-icon type="plus" /> New Tag </a-tag> </a-form-model-item> <a-form-model-item label="封面"> <a-upload :customRequest="customRequest" name="file" :showUploadList="true" list-type="picture" :data="{'bucketName':bucketName.bucket_cover}" @change="handleChangeCoverFile" :default-file-list="form.coverFileList" :beforeUpload="beforeUploadCover" accept=".jpg,.png,.jpeg"> <!-- :disabled="form.coverFileList.length>=1" --> <a-button> <a-icon type="upload" />jpg/png/jpeg.. </a-button> </a-upload> <!-- <span class="myTip"> 自动转码,可以传高清图 </span> --> </a-form-model-item> <a-form-model-item label="定时"> <a-date-picker v-model="form.publishDate" show-time type="datetime" placeholder="发布时间" style="width: 100%;" :disabledDate="disabledDate" :getCalendarContainer="getCalendarContainer()" /> </a-form-model-item> <div v-bind:class="{'myBorder':form.top}" style="padding: 3px;margin-bottom: 10px;"> @@ -195,6 +221,15 @@ import myConstant from "../../config/myConstant.js" import md5 from 'js-md5'; function getBase64(file) { return new Promise((resolve, reject) => { const reader = new FileReader(); reader.readAsDataURL(file); reader.onload = () => resolve(reader.result); reader.onerror = error => reject(error); }); } export default { beforeMount() { queryBlogArticleType({}).then((res) => { @@ -219,7 +254,10 @@ }; return { previewVisible: false, previewImage: '', bucketName: myConstant.bucketName, momentDate: undefined, blogArticleType: [], tags: [], inputVisible: false, @@ -231,9 +269,8 @@ span: 13 }, form: { introduce: '', secret: '', online: false, preference: false, title: '', content: '', class: [], @@ -247,8 +284,14 @@ password: "", fileId: null, coverFile: null, pictureIds: null, videoIds: null, blogFileList: [], coverFileList: [], pictureList: [], videoList: [], online: false, preference: false, }, rules: { title: [{ @@ -263,6 +306,11 @@ trigger: 'blur' }, ], introduce: [{ max: 5, message: '字数限制700', trigger: 'blur' }, ], secret: [{ required: true, message: '好像这里错了..', @@ -293,9 +341,58 @@ }; }, methods: { handleCancel() { this.previewVisible = false; }, async handlePreview(file) { if (!file.url && !file.preview) { file.preview = await getBase64(file.originFileObj); } this.previewImage = file.url || file.preview; this.previewVisible = true; }, reset() { // this.form.blogFileList = []; // this.form.coverFileList = []; }, formatDate(date, dateString) { this.form.publishDate = dateString; }, beforeUploadVideo(file, fileList) { return new Promise((resolve, reject) => { if (this.form.secret == null || this.form.secret == "") { this.$message.error('需要正确的授权码'); return reject(false); } if (this.form.coverFileList.length > 10) { this.$message.error('这里最多上传10个文件'); return reject(false); } if (file.size > myConstant.uploadVideoSizeLimit) { this.$message.error('上传文件大小不能超过 200M!'); return reject(false); } return resolve(true) }); }, beforeUploadPicture(file, fileList) { return new Promise((resolve, reject) => { if (this.form.secret == null || this.form.secret == "") { this.$message.error('需要正确的授权码'); return reject(false); } if (this.form.coverFileList.length > 10) { this.$message.error('这里最多上传10个文件'); return reject(false); } if (file.size > myConstant.uploadFileSizeLimit) { this.$message.error('上传文件大小不能超过 2M!'); return reject(false); } return resolve(true) }); }, beforeUploadCover(file, fileList) { return new Promise((resolve, reject) => { @@ -343,9 +440,9 @@ } if (info.file.status === 'done') { this.form.fileId = info.file.response.data; this.$message.success(`${info.file.name} file uploaded successfully`); this.$message.success(`${info.file.name} 上传成功`); } else if (info.file.status === 'error') { this.$message.error(`${info.file.name} file upload failed.`); this.$message.error(`${info.file.name} 上传失败`); } if (this.form.blogFileList == null || this.form.blogFileList.length == 0) { @@ -360,13 +457,55 @@ } if (info.file.status === 'done') { this.form.coverFile = info.file.response.data; this.$message.success(`${info.file.name} file uploaded successfully`); this.$message.success(`${info.file.name} 上传成功`); } else if (info.file.status === 'error') { this.$message.error(`${info.file.name} file upload failed.`); this.$message.error(`${info.file.name} 上传失败`); } if (this.form.coverFileList == null || this.form.coverFileList.length == 0) { this.form.coverFile = null } }, handleChangePictureFile(info) { this.form.pictureList = info.fileList; if (info.file.status !== 'uploading') { console.log(info.file, info.fileList); } if (info.file.status === 'done') { if (this.form.pictureIds == null || this.form.pictureIds == "") { this.form.pictureIds = info.file.response.data; } else { this.form.pictureIds = this.form.pictureIds + "," + info.file.response.data; } this.$message.success(`${info.file.name} 上传成功`); } else if (info.file.status === 'error') { this.$message.error(`${info.file.name} 上传失败`); } if (this.form.pictureList == null || this.form.pictureList.length == 0) { this.form.pictureIds = null } }, handleChangeVideoFile(info) { this.form.videoList = info.fileList; if (info.file.status !== 'uploading') { console.log(info.file, info.fileList); } if (info.file.status === 'done') { if (this.form.videoIds == null || this.form.videoIds == "") { this.form.videoIds = info.file.response.data; } else { this.form.videoIds = this.form.videoIds + "," + info.file.response.data } this.$message.success(`${info.file.name} 上传成功`); } else if (info.file.status === 'error') { this.$message.error(`${info.file.name} 上传失败`); } if (this.form.videoList == null || this.form.videoList.length == 0) { this.form.videoIds = null } }, /** @@ -377,12 +516,13 @@ formData.append('file', option.file) formData.append('bucketName', option.data.bucketName) formData.append('authCode', this.form.secret == "" ? "" : md5(this.form.secret)) let _this = this myFileInfoUpload(formData).then((res) => { if (res.success) { this.$message.success('上传成功') option.onSuccess(res, option.file) // 在上传成功后进度条显示为99 progress.percent = 100 // this.$message.success('上传成功') } else { this.$message.error('上传失败:' + res.message) } @@ -404,7 +544,6 @@ } }, 500) }, disabledDate(current) { return current < moment().subtract(1, "day"); @@ -417,18 +556,15 @@ //console.log(tags); this.tags = this.tags.filter(tag => tag !== removedTag); }, showInput() { this.inputVisible = true; this.$nextTick(function() { this.$refs.input.focus(); }); }, handleInputChange(e) { this.inputValue = e.target.value; }, handleInputConfirm() { const inputValue = this.inputValue; let tags = this.tags; src/components/mini/box18-photoShow.vue
@@ -23,15 +23,13 @@ <div class="post-categories"> <span class="tag vcard"> <a-icon type="customer-service" /> <a href="#" rel="category tag"> {{item.articleTypeName}}</a> {{item.articleTypeName}} </span> </div> <div class="post-on"> <span class="entry-date"> <a-icon type="calendar" /> <a href="#" rel="bookmark"> {{item.publishDate}} </a> </span> </div> </div> src/components/mini/box2-class.vue
@@ -7,7 +7,7 @@ </span> <div class="blog-scroll "> <div class="blog-log-list"> <div class="blog-log-item" v-for="item in list1"> <div class="blog-log-item" v-for="(item,index) in list1"> <router-link :to="{path:'/articleList',query:{typeId:item.id}}"> <span>{{item.typeName}}</span> </router-link> @@ -63,7 +63,7 @@ /*日志部分*/ .blog-log-list { line-height: 1.6; padding-left: 3%; // padding-left: 3%; padding-right: 3%; flex-wrap: wrap; src/components/mini/box3-archive.vue
@@ -5,24 +5,23 @@ 归档信息 </router-link> </span> <div class="blog-scroll "> <div v-for="yearData in myData"> <div class="blog-scroll" v-bind:class="{miniHeight:showLess,maxHeight:!showLess}"> <div v-for="(yearData,index) in myData" class="fade" v-if="index < 2 || !showLess"> <router-link :to="{name:'tagTime',query:{year:yearData.year}}"> <p class="blog-pigeonhole-p">{{yearData.year}}年</p> </router-link> <div class="blog-pigeonhole-list"> <div class="blog-pigeonhole-item" v-for="item in yearData.list"> <router-link :to="{name:'tagTime', query:{year:yearData.year,month:item.month}}"> <span>{{item.month}}月</span> </router-link> <span>{{item.count}}篇</span> </div> </div> </div> </div> <div @click="()=>showLess=!showLess" v-if="myData.length>2 && showLess">...</div> </div> </template> @@ -31,7 +30,9 @@ import { archive } from '../../api/blogStatistics.js' export default { beforeMount() { archive({}).then((res) => { this.myData = res.data; @@ -39,52 +40,8 @@ }, data() { return { "myData": [ // { // "year": "2022", // "list": [{ // "month": "12", // "count": 10 // }, // { // "month": "10", // "count": 11 // }, // { // "month": "9", // "count": 9 // } // ] // }, // { // "year": "2021", // "list": [{ // "month": "12", // "count": 8 // }, // { // "month": "10", // "count": 7 // }, // { // "month": "7", // "count": 4 // }, // { // "month": "6", // "count": 3 // }, // { // "month": "5", // "count": 2 // }, // { // "month": "4", // "count": 1 // } // ] // } ], showLess: true, "myData": [], } } } @@ -93,11 +50,24 @@ </script> <style lang="less"> .blog-scroll { transition: all ease-in-out 0.8s; } .miniHeight { max-height: 250px; } .maxHeight { max-height: 800px; } /*归档部分*/ .archive { a { color: black; } } .blog-pigeonhole { @@ -110,7 +80,7 @@ line-height: 20px; border-radius: 6px 6px 6px 6px; /*background-color: #edf0f3;*/ margin-left: 3%; margin-left: 5%; margin-bottom: 3%; opacity: 0.7; } @@ -131,7 +101,7 @@ /*让弹性盒元素在必要的时候拆行:*/ align-content: flex-start; -webkit-align-content: flex-start; transition: all 1 ease; } .blog-pigeonhole-item { src/components/mini/mdDetail.vue
@@ -42,7 +42,7 @@ <div class="markdown-body articleTitle"> <h4>{{articelMeta.title}}</h4> <div class="introduceSamll" v-if="introduce.length==0"> <div class="introduceSamll" v-if="introduce==null||introduce.length==0"> <p>空荡荡的..我好像忘记写点什么了OωO</p> </div> <div class="introduce" v-else> @@ -91,7 +91,7 @@ <div style="text-align: center;">图组数量:{{articelMeta.pictureUrlList.length}}</div> </div> </div> <div class="introduce"> <div class="introduce" v-if="introduce!=null && introduce.length>0"> <pre style="white-space: pre-line;padding: 10px;max-width: 100%;"> {{introduce}} </pre> @@ -598,6 +598,7 @@ max-width: 120px; } } .countMeta{ bottom: 10px; } src/components/mini/tagInfo.vue
@@ -3,12 +3,8 @@ <!-- 好用的黑色 #292a2d --> <div class="swichTag "> <a-page-header title="关于我的一些..小故事" style="padding: 10px 0px 20px 0px;" @back="() => this.$router.go(-1)" /> <a-timeline pending="..."> <p slot="pendingDot" style="font-size: 18px;" /> <a-timeline-item color="" style="margin-left: 10px;"> <!-- <a-icon slot="dot" type="form" style="font-size: 18px;" /> --> <a-icon type="message" slot="dot" style="font-size: 18px;" /> <br> <div> <p> <ul> <li> 尘世间一个迷途小码农</li> @@ -20,8 +16,7 @@ <span class="myTip" style="text-decoration:line-through">硬核</span>玩家 </li> <li> <img src="http://t.inleft.com/share/media_photo/xm.jpg" style="width: 50px;border-radius: 20px;" /> <img src="http://t.inleft.com/share/media_photo/xm.jpg" style="width: 50px;border-radius: 20px;" /> 我的小老弟&御用暖床袋 <img src="http://t.inleft.com/share/media_photo/IMG_20220117_145633.jpg" style="width: 50px;border-radius: 30px" /> @@ -30,9 +25,8 @@ <br> </ul> </p> </div> </a-timeline-item> </a-timeline> <!-- 寻找天堂这部作品更引起了我的共鸣 这个时间点之前,瞰哥还有另一个神作,去月球,我也很喜欢这个 @@ -45,7 +39,45 @@ <h3 style="text-align: center;">那些对我而言,有意义的时刻..</h3> <br> <a-tabs defaultActiveKey="1" :tabBarStyle="{'display': 'flex','justify-content': 'center'}"> <a-tab-pane key="1" tab="编年史"> <a-tab-pane key="1" tab="更新记录"> <a-timeline> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px; " /> <h3>2022-08-25</h3> <p>更新:拓展了数据库字段,日志可以支持更加丰富的媒体类型了</p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-08-11</h3> <p>更新:优化了视频模块,现在可以在 <router-link :to="{path:'/platform'}">「月 台」</router-link>看到新发布的视频啦 </p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-07-29</h3> <span> <router-link to="/comment">优化更新:记住到访的朋友</router-link> <p class="myTip">你的名字.</p> </span> <p>更新:近期更新日志添加小红点提示</p> <p>更新:碎碎念类型日志优化提示</p> <p>新增:拉取最近几条互动记录</p> <p>新增:外链类型日志 for <span class="myTip">浅浅子</span> </p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-03-03</h3> <span> <router-link to="/comment">碎碎念</router-link> </span> <p class="myTip">虽然没啥用,可万一有人想给我留言呢☺☺️</p> </a-timeline-item> </a-timeline> </a-tab-pane> <a-tab-pane key="2" tab="编年史"> <a-timeline> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px; " /> @@ -125,45 +157,7 @@ <br>不离不弃,直至永远 </a-timeline-item> --> </a-tab-pane> <a-tab-pane key="2" tab="更新记录"> <a-timeline> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px; " /> <h3>2022-08-25</h3> <p>更新:拓展了数据库字段,日志可以支持更加丰富的媒体类型了</p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-08-11</h3> <p>更新:优化了视频模块,现在可以在 <router-link :to="{path:'/platform'}">「月 台」</router-link>看到新发布的视频啦 </p> <p class="myTip">谱子??谱子还没想好放哪里..</p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-07-29</h3> <span> <router-link to="/comment">优化更新:记住到访的朋友</router-link> <p class="myTip">你的名字.</p> </span> <p>更新:近期更新日志添加小红点提示</p> <p>更新:碎碎念类型日志优化提示</p> <p>新增:拉取最近几条互动记录</p> <p>新增:外链类型日志 for <span class="myTip">浅浅子</span> </p> </a-timeline-item> <a-timeline-item color="" style="margin-left: 10px;"> <a-icon slot="dot" type="clock-circle-o" style="font-size: 18px;" /> <h3>2022-03-03</h3> <span> <router-link to="/comment">碎碎念</router-link> </span> <p class="myTip">虽然没啥用,可万一有人想给我留言呢☺☺️</p> </a-timeline-item> </a-timeline> </a-tab-pane> </a-tabs> </div> src/components/swichLabel/edit.vue
New file @@ -0,0 +1,69 @@ <template> <div class="blog-main"> <div class="edit-main"> <div class="edit-info"> <div class="edit-info-head"> 头 </div> <div class="edit-info-body"> 信息 </div> </div> <div class="edit-write"> <div class="edit-write-input">输入区</div> <div class="edit-write-preview">对比区</div> </div> </div> </div> </template> <script> </script> <style lang="less"> .edit-main { min-height: 860px; width: 100%; display: grid; grid-template-columns: repeat(11, 1fr); } .edit-info { grid-column-start: 1; grid-column-end: 4; display: flex; flex-direction: column; } .edit-info-head, .edit-info-body { width: 100%; } .edit-info-head { height: 200px; background-color: #aa55ff; } .edit-info-body { background-color: #aa007f; height: 100%; } .edit-write { grid-column-start: 4; grid-column-end: 12; background-color: #ffaaff; display: flex; } .edit-write-input { width: 100%; background-color: #aa557f; } .edit-write-preview { width: 100%; background-color: #55007f; } </style> src/components/swichLabel/main1-home.vue
@@ -252,8 +252,6 @@ overflow-x: hidden; overflow-y: hidden; transition: height 1s; } .blog-scroll:hover::-webkit-scrollbar { src/config/myConstant.js
@@ -1,6 +1,7 @@ //常量 const myConstant = { uploadFileSizeLimit: 2 * 1024 * 1024, uploadVideoSizeLimit: 200 * 1024 * 1024, visitorDataKey: "visitorData.inleft.com", userName: "inleft", img404: "this.onerror='';this.src=\"http://t.inleft.com/share/media_photo/idea_beijing.jpg\"", src/config/router.config.js
@@ -8,6 +8,7 @@ import link from '../components/swichLabel/main4-link.vue' import login from '../components/swichLabel/main5-login.vue' import comment from '../components/swichLabel/main6-comment.vue' import edit from '../components/swichLabel/edit.vue' import platformGroup from '../components/group/platformGroup.vue' @@ -98,7 +99,8 @@ path: '/videoDetail', name: "videoDetail", component: videoDetail, }] } ] }, { path: '/main3', @@ -110,6 +112,10 @@ }, { path: '/login', component: login, }, { path: '/edit', name: 'edit', component: edit, },