Omi应用md2site-0.5.0发布-支持动态markdown拉取解析


写在前面

Md2site是基于Omi的一款Markdown转网站工具,使用简单,生成的文件轻巧,功能强大。

在使用之前的版本的时候,你会发现体验非常好?为什么非常好?因为页面间的切换是无刷新!
无刷新的原理就是,所有的markdown都会被webpack打包到js里,只要在js动态require就行。

这样带来的一个问题便是:如果有海量的markdown的时候,首次加载的时间非常长。

怎么解决?支持动态拉取和解析markdown~~

使用姿势

所有命令都是和以前一样的。接下来,打开project.js:

  • 你把async改成true就代表会生成一个异步拉取和解析markdown的网站
  • 你把async改成false就代表会生成一个完全无刷新的网站

够方便吧!!一键配置!!

原理解析

防止webpack打包markdown

当我们设置async为true的时候,不是希望webpack把markdown打包入js里的,所以在webpack config做了如下操作:

其中config.module.loaders[3]就是配置的markdown loader。exclude就代表把相关的正则匹配到的文件直接给无视掉。

动态加载markdown

加载完后直接交给remarkable解析成HTML,remarkable解析成HTML的速度超快到你无法感知,所以提前生成好HTML不是非常必要。

Async Update

异步的刷新组件。

详细的代码可以看这里

Github

欢迎使用~~


发表评论

电子邮件地址不会被公开。

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>