filemap.js文件目录结构自动生成工具

JavaScript019

filemap.js文件目录结构自动生成工具,第1张

项目地址: https://github.com/jrainlau/filemap

开发环境 node 版本为5.4.1

作为一个经常写博客的人,在介绍自己的项目的时候往往需要介绍文件目录结构。在以往的情况下,要么一行一行手动码字输入,要么简单粗暴地截图,都无法方便快速地构造一个文件目录结构图出来。后来在学习算法的时候,发现文件目录结构跟树的概念非常像,于是便萌生出制作一个自动化文件目录结构生成工具出来。

(PS:请确保filemap.js文件在根目录下)

<-i folder-name>:为了隐藏一些包含了太多子文件和子文件夹的目录,比如node_modules文件夹,我们可以使用这一条命令避免它们展开。文件名之间用空格隔开。

使用npm安装jsdoc后,其文件目录结构如下:

参考: taffydb

而static文件夹放置静态文件,它会被原封不动地复制到生成的文件夹中,tmpl是模板文件

taffyData是包含所有doclet的taffyData,doclet是@link,@name...

比如使用了@name,就可以使用docs[0].name获取第一个@name值

和模板相关的模块是:

生成template的语句是

再看template.js导出类的构造函数

layout的初始化语句:

所以,如果要自定义模板(假设为 selfTheme ,以下都以其为例)的配置项,只需要使用 env.conf.templates 获取即可。例如:

template.js导出类的方法如下:

因此,在 layout.tmpl 文件中,有 content 变量表示当前页内容

当然,同时具有data包含的其它属性变量

在publish.js中,直接使用render函数的有两处。

所以,要修改各页面的标题,只需要将调用这两个函数的title函数换掉,比如:

不过重点还是添加模板变量和方法

添加到view中的方法/属性:

docs是一个包含数据的Taffy对象,它的来源是:

// myClasses等就是传入模板文件的docs变量

在模板中则用this.find({kind: 'class'})代替(view.find)

docs的元素内容是:

特别的: