先來看一下我在碼雲上創建的demo:

http://lin1270.gitee.io/nicedoc/#/

GIT自己clone一下:

https://gitee.com/lin1270/nicedoc.git

PRE.------------------------------------

1.如果沒有安裝NODEJS,先安裝一下NODEJS。

2.安裝docsify: ---> 方便本地跑起來看效果,不然直接懟GIT上,可能格式不正確的啦。

npm i docsify-cli

3.創建git。 ----> 方便版本管理。有些文檔,有版本管理,更容易應對扯皮。

4.將GIT拉下來,如果你想用我一樣的結構,就複製一下我的文件夾唄。

5.本地預覽:

docsify serve

當然,也可以創建nodejs項目,在 package.json 中加入腳本: "dev": "docsify serve",

這樣就可以愉快地執行:npm run dev啦。

6.一切就緒就可以傳到GIT了。

7.那麼如何愉快地遠程查看呢?

這就需要配置GIT了。

那麼請參照官方文檔:

https://docsify.js.org/#/deploy?id=github-pages

(我使用碼雲,碼雲自動部署貌似要付費才得,所以我是需要手動更新,才生效的)

(所以建議使用github,github只要PUSH成功,再CTRL+R刷新即可看到更新後的效果了)

文檔結構主要分爲幾部分:

1. 搜尋框。

2.左側菜單。side.md

3.右上角的導航欄。nav.md

4.內容區。

入口:

index.html

看一下配置就知道文檔的組織結構了,不必贅述。

下面帖一下錦榮大佬幫寫的菜單點擊折疊展開的牛B插件代碼:

plugins: [
function(hook, vm) {
hook.doneEach(function() {
var sidebarLiEls = document.querySelectorAll('.sidebar-nav li')
sidebarLiEls.forEach(function(el) {
el.style.cursor = 'pointer'
el.addEventListener('click', function(e) {
e.stopPropagation()
clearActiveClass()
el.classList.add('active')
var targetEl = e.target.children[0] || e.target.nextElementSibling
if (!targetEl) return
if (targetEl.nodeName.toLowerCase() !== 'ul') return
if (targetEl.style.display === 'none') {
targetEl.style.display = 'block'
} else {
targetEl.style.display = 'none'
}
}, false)
}) function clearActiveClass() {
sidebarLiEls.forEach(function(el) {
if (el.classList.contains('active')) {
el.classList.remove('active')
}
})
}
})
}
]

使用 docsify 創建自己的 markdown 文檔系統的更多相关文章

  1. Markdown 文档生成工具

    之前用了很多Markdown 文档生成工具,发现有几个挺好用的,现在整理出来,方便大家快速学习. loppo: 非常简单的静态站点生成器 idoc:简单的文档生成工具 gitbook:大名鼎鼎的文档协 ...

  2. 入坑 docsify,一款神奇的文档生成利器!

    layout: postcategory: javatitle: 入坑 docsify,一款神奇的文档生成利器!tagline: by 沉默王二tags: - java Guide 哥是我认识的一个非 ...

  3. 如何創建一個自己的 Composer/Packagist 包 (PHP)

    如何創建一個自己的 Composer/Packagist 包 首先讓我們踏着歡快的腳步去Github創建一個新庫,這裏取名 composer-car,又歡快的將它克隆到本地: git clone ht ...

  4. js 加载并解析Markdown文档

    网上有很多网站会通过.md文档来做页面内容(比如,阮一峰老师的es6入门blog: http://es6.ruanyifeng.com/),很好奇,这是怎么做的?(至于.md是什么,或许(https: ...

  5. 使用Python从Markdown文档中自动生成标题导航

    概述 知识与思路 代码实现 概述 Markdown 很适合于技术写作,因为技术写作并不需要花哨的排版和内容, 只要内容生动而严谨,文笔朴实而优美. 为了编写对读者更友好的文章,有必要生成文章的标题导航 ...

  6. 「Ionic」創建新項目

    1.創建新項目 创建一个名为myApp的还有tabs的项目(ionic start <project-name> <optional-template>) 可选模板为sidem ...

  7. Linux(Ubuntu)使用日记------markdown文档转化为word文档

    Linux(Ubuntu)使用日记------markdown文档转化为word文档

  8. 将markdown文档使用gulp转换为HTML【附带两套css样式】

    将markdown文档使用gulp转换为HTML[附带两套css样式] 今天遇到一个需求,即将Markdown文档转为为HTML在网页展示,身为一名程序员,能用代码解决的问题,手动打一遍无疑是可耻的. ...

  9. [Ms SQL] 基本創建、修改與刪除

    ##創建 table student, 內涵 id ,name ,tel三種columne,設定id為primary key create table student ( id int primary ...

随机推荐

  1. 对称加密算法DES、3DES和AES 原理总结(转载)

    1.对称加密算法 1.1 定义 对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yue)一起经过特殊加密算法处理后,使其变成复杂的加密密文发 ...

  2. [Python之路] 实现简易HTTP服务器与MINI WEB框架(利用WSGI实现服务器与框架解耦)

    本文描述如果简单实现自定义Web服务器与自定义简易框架,并且不断进行版本迭代,从而清晰的展现服务器与Web框架之间是如何结合.如何配合工作的.以及WSGI是什么. 本文帖的代码有点多,但基本每次迭代修 ...

  3. 6.Servlet、Filter过滤器以及监听器

    Servlet 是运行在Web服务器端的Java程序,它使用Java语言编写,与Java程序的区别是Servlet对象主要封装了对HTTP请求的处理,并且它的运行需要Servlet容器的支持,在Jav ...

  4. codevs3269 混合背包 x

    3269 混合背包  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 钻石 Diamond   题目描述 Description 背包体积为V ,给出N个物品,每个物品占用体积为 ...

  5. 编写批处理使用msbuild编译项目

    echo off ::请把此bat脚本放到以下代码路径下 并在环境变量中配置对应版本的vs编译器的值 ::vs2017如:C:\Program Files (x86)\Microsoft Visual ...

  6. LeetCode---Backtracking && DP

    **322. Coin Change 思路:动态规划,构造一个数组,存入当前index最少需要多少个coin public int coinChange(int[] coins, int amount ...

  7. Cannot use unsafe construct in safe context

    https://stackoverflow.com/questions/25953887/how-to-use-unsafe-code-in-safe-contex I am not sure if ...

  8. https知识汇总

    状态码 含义 100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应.服务器必须在 ...

  9. mvp解读

    mvp存在的问题 1.业务复杂时,可能使得Activity变成更加复杂,比如要实现N个IView,然后写更多个模版方法. 2.业务复杂时,各个角色之间通信会变得很冗长和复杂,回调链过长. 3.Pres ...

  10. TensorFlow 学习(1)——第一个程序:线性回归

    目前这个程序还有很多地方没有搞懂,先跑一跑例程看看效果如何.从结果来看,最终的训练成果能够接近于预设的数据