<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        Vuejs中使用markdown服務器端渲染的示例

        來源:懂視網 責編:小采 時間:2020-11-27 22:25:10
        文檔

        Vuejs中使用markdown服務器端渲染的示例

        Vuejs中使用markdown服務器端渲染的示例:啊哈,又是來推薦一個 vuejs 的 package,miaolz123/vue-markdown。 對應的應用場景是:你想使用一個編輯器或者是在評論系統中支持 markdown。這個 package 的有點還是挺多了,比如默認就支持 emoji,這個就很完美啦!laravist 的新版就使用了
        推薦度:
        導讀Vuejs中使用markdown服務器端渲染的示例:啊哈,又是來推薦一個 vuejs 的 package,miaolz123/vue-markdown。 對應的應用場景是:你想使用一個編輯器或者是在評論系統中支持 markdown。這個 package 的有點還是挺多了,比如默認就支持 emoji,這個就很完美啦!laravist 的新版就使用了

        啊哈,又是來推薦一個 vuejs 的 package,miaolz123/vue-markdown。 對應的應用場景是:你想使用一個編輯器或者是在評論系統中支持 markdown。這個 package 的有點還是挺多了,比如默認就支持 emoji,這個就很完美啦!laravist 的新版就使用了 vue-markdown 來渲染評論。

        安裝

        直接使用 npm 來安裝:

        npm install --save vue-markdown

        使用

        也是很簡單的,可以直接這樣:

        import VueMarkdown from 'vue-markdown'
        
        new Vue({
         components: {
         VueMarkdown
         }
        })
        
        

        或者是這樣,舉一個具象化的例子是:比如我們有一個 Comment.vue 組件用來渲染評論,可以在這個組件中直接指明:

        import VueMarkdown from 'vue-markdown';
        <template>
         <div>
         <vue-markdown :source="comment.body"></vue-markdown>
         </div>
        </template>
        
        export default { // ... other codes
         props:['comment'],
         data(){ 
         return {
         comment : this.comment
         }
         }, 
         components: {
         VueMarkdown
         }, 
        // ... other codes
        }
        
        

        然后在渲染的時候這個:

        <div class="comments">
         <div class="comments" v-for="comment in comments">
         <comment :comment="comment">
         </comment>
         </div>
        </div>

        這里我們首先通過 comment props 傳入整個 comment(這個comment其實就是一個對象) ,然后在 Comment.vue 通過 :source 來給 veu-markdown 組件傳入每個評論的 body 字段內容,注意這里的 comment.body 在數據庫中保存的就是評論的 markdown 格式的內容。

        Vuejs服務器端渲染markdown示例

        const Koa = require('koa');
        const _ = require('koa-route');
        const vsr = require('vue-server-renderer');
        const fs = require('fs');
        const indexjs = require('./component/index.js');
        const Vue = require('vue');
        const MD = require('markdown-it')
        
        const server = new Koa();
        
        const route = {
         index: (ctx, id) => {
         // 解析markdown
         const md = new MD().render(fs.readFileSync('./markdown/' + id + '.md', 'utf-8'));
         // vue插入html代碼
         const app = new Vue({
         data: {
         main: md
         },
         template: `
         <div>
         <div class="main" v-html="main"></div>
         </div>`
         });
         // 其他變量設置
         const context = {
         htmlTitle: id
         };
         // 加載模板html文件
         const renderer = vsr.createRenderer({
         template: fs.readFileSync('./template/index.template.html', 'utf-8')
         });
         // 渲染
         renderer.renderToString(app, context, (err, html) => {
         if (err) {
         ctx.response.status = 500;
         } else {
         ctx.response.body = html;
         }
         })
         }
        };
        
        server.use(_.get('/post/:id', route.index));
        server.listen(8080);
        
        
        
        <!DOCTYPE html>
        <html lang="CH-ZN">
        
        <head>
         <meta charset="UTF-8">
         <meta name="viewport" content="width=device-width, initial-scale=1.0">
         <meta http-equiv="X-UA-Compatible" content="ie=edge">
         <title>{{htmlTitle}}</title>
        </head>
        
        <body>
         <!--vue-ssr-outlet-->
        </body>
        
        </html>
        

        總結

        本文介紹的 vue-markdown 在某些應用場景中其實超級好用,特別是對于評論系統想支持 markdown 這個需求來說,容易集成,優點多多。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Vuejs中使用markdown服務器端渲染的示例

        Vuejs中使用markdown服務器端渲染的示例:啊哈,又是來推薦一個 vuejs 的 package,miaolz123/vue-markdown。 對應的應用場景是:你想使用一個編輯器或者是在評論系統中支持 markdown。這個 package 的有點還是挺多了,比如默認就支持 emoji,這個就很完美啦!laravist 的新版就使用了
        推薦度:
        標簽: VUE 使用的 js
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲不卡AV影片在线播放| 无码人妻一区二区三区免费 | 国产一区二区三区亚洲综合| 91精品国产免费久久久久久青草 | 亚洲精品A在线观看| 久久无码av亚洲精品色午夜| 最近的免费中文字幕视频 | 有色视频在线观看免费高清在线直播| 国产精品麻豆免费版| 美女视频黄频a免费| 亚洲一区视频在线播放| a级毛片免费播放| 久久久久亚洲AV片无码下载蜜桃| 99在线观看视频免费| 亚洲一级毛片免费在线观看| 日产乱码一卡二卡三免费| 美女被免费网站视频在线| 久久精品国产精品亚洲精品| 色欲色香天天天综合网站免费| 亚洲国产成人久久99精品| 性xxxx视频播放免费| caoporn国产精品免费| 久久亚洲AV无码精品色午夜麻豆| 欧美男同gv免费网站观看 | 99亚洲精品卡2卡三卡4卡2卡| 四虎国产精品免费久久影院| 中文字幕不卡高清免费| 亚洲宅男永久在线| 成年女人毛片免费播放视频m| 黄网站色视频免费观看45分钟 | a级午夜毛片免费一区二区| 日产亚洲一区二区三区| 成年女人免费视频播放77777| 免费国产黄网站在线观看动图| 久久久久久a亚洲欧洲aⅴ| 69成人免费视频| 成人嫩草影院免费观看| 日韩精品一区二区亚洲AV观看| 国产精品va无码免费麻豆| 七色永久性tv网站免费看| 在线观看亚洲AV日韩AV|