美文网首页JavaScript 进阶营
制作‘简书’—把md文档转化为HTML文档

制作‘简书’—把md文档转化为HTML文档

作者: wuyadream | 来源:发表于2017-09-26 17:53 被阅读0次

简书md文档在线转化成html文档的能力一直是简书的一大特色,我也来试试如何制作一个只有核心功能(md转化为HTML)的“简书”

效果图

img_1.png

标题没有认真调整格式,但是其他部分看起来是不是和简书超级像呢?感兴趣的话就一起来和我完成属于自己的“简书吧”。

实现

实现原理是采用node.js搭建服务器,读取md文件转化为html片断。浏览器发送ajax请求获取片段后再渲染生成html网页。原理其实很简单呢,对不?准备好就开始动手吧。

搭建node.js服务器

var express = require('express');
var http = require('http');
var fs = require('fs');
var bodyParser = require('body-parser');
var marked = require('marked');    // 将md转化为html的js包
var app = express();

app.use(express.static('src'));  //加载静态文件

var urlencodedParser = bodyParser.urlencoded({ extended: false });

app.get('/getMdFile',urlencodedParser, function(req, res) {

    var data = fs.readFileSync('src/test.md', 'utf-8');    //读取本地的md文件
    res.end(JSON.stringify({
        body : marked(data)
    }));
} );

//启动端口监听
var server = app.listen(8088, function () {

    var host = server.address().address;
    var port = server.address().port;

    console.log("应用实例,访问地址为 http://%s:%s", host, port)
});

安装好依赖包,服务器就可以愉快地跑起来了~

HTML结构

重要的就是发送请求获取数据啦,把取到的数据填充到div中即可。

<div id="content">
    <h1 class="title">md-to-HTML web app</h1>
    <div id="article">
    </div>
</div>
<script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
<script>
    var article = document.getElementById('article');
    $.ajax({
        url: "/getMdFile", success: function(result) {  
            console.log('数据获取成功');
            article.innerHTML = JSON.parse(result).body;
        }, error: function (err) {
            console.log(err);
            article.innerHTML = '<p>获取数据失败</p>';
        }
    });
</script>

再根据简书的样式添加上CSS样式,一个小小的“简书”就实现了。
有兴趣的童鞋可以去github上下载源码,飞机票

相关文章

  • 制作‘简书’—把md文档转化为HTML文档

    简书md文档在线转化成html文档的能力一直是简书的一大特色,我也来试试如何制作一个只有核心功能(md转化为HTM...

  • 简书迁移到Hexo

    1、简书数据md文档下载 头像->设置->账号管理->下载所有文章 2、迁移简书文章 需要在简书md文章,增加头部...

  • 批量将md文档中的图片上传到简书

    在记录学习过程中发现写下的md文档在更新至简书时,文档中的本地图片无法正常上传成功,不管时富文本模式还是md模式,...

  • manjaro下使用picgo来创建图床

    简介 我们写md文档最麻烦的要属于图片的处理了,虽然使用简书写文档也是一个选择,但是简书对markdown的支持以...

  • 【前端】-011-页面制作-HTML-小结

    HTML笔记汇总 【前端】-003-页面制作-HTML-HTML文档结构【前端】-004-页面制作-HTML-HT...

  • HTML学习日志

    HTML文档表示网页 HTML文档描述网页 HTML 文档包含 HTML 标签和纯文本 HTML 文档也被称为网页...

  • 页面制作——HTML

    1.HTML简介 HTML文档分为三个部分:文档声明,文档头部,文档主体 文档声明:...

  • 如何用Java将Office文档转换为PDF

    需求场景 office文档在web端在线浏览 实现思路1 利用POI分析word文档或者xls表格,转化为HTML...

  • pandoc提取word中的图片

    pandoc是文档转换利器。在将docx文档转为md文档过程中,如果直接输入pandoc -o f.md f[^f...

  • 2019-01-16

    Python office文档转html 最近因公司需求,想做一个网站管理公司文档,实现文档预览效果,找了很多...

网友评论

    本文标题:制作‘简书’—把md文档转化为HTML文档

    本文链接:https://www.haomeiwen.com/subject/gkqeextx.html