RxJS v6 dash 文档

栏目: 编程语言 · 发布时间: 7年前

内容简介:从

rxjs6.docset 成品下载地址

rxjs6.docset.zip

代码仓库

https://github.com/xinshangshangxin/dash-rxjs-6

原理

官方文档 Any HTML Documentation 可知, 只要有 HTML, 就可以轻松构建 Dash 文档

步骤

创建文件夹 <docset name>.docset/Contents/Resources/Documents/

创建 Info.plist 文件 和 icon.png

Info.plist 的模板 在 https://kapeli.com/resources/Info.plist

https://rxjs-dev.firebaseapp.com/api 解析有哪些 API

Network 中可以 看到 一个 /generated/docs/api/api-list.json 的请求, 里面有每个 API 内容, 如下图

RxJS v6 dash 文档

创建 SQLite Index

将上面 api-json 的内容 创建到 SQLite Index
CREATE TABLE searchIndex(id INTEGER PRIMARY KEY, name TEXT, type TEXT, path TEXT);

创建 每个 API 的 html 界面

  • api-json 的内容中 有 path 属性, 可以请求每个界面的详细内容( content 属性)
    RxJS v6 dash 文档
  • ReactiveX/rxjs 的仓库中 发现 用了 assets/js/prettify.js 来格式化代码, 所以相同的, 在我们创建的 html 界面中需要 prettify 来格式化代码显示, 代码如下
let codeEleList = document.querySelectorAll('body code-example');
[...codeEleList].forEach((ele) => {
  let html = window.prettyPrintOne(ele.innerHTML, 'javascript', false);
  ele.innerHTML = `<aio-code>
  <pre class="prettyprint lang-javascript">
    <code class="animated fadeIn">${html}
    </code>
  </pre>
</aio-code>`;
});
  • 由于是离线文档, 所以在 html 中所有的地址都要转化成相对路径, 代码如下
let depth = location.href.replace(/.*\/api\//, '').split('/').length;
let aEleList = document.querySelectorAll('a');
[...aEleList].forEach((ele) => {
  let href = ele.href;
  if (/\/api\//.test(href)) {
    let depthStr = new Array(depth).fill('..').join('/');
    let [preUrl, anchor = ''] = href.split('#');
    ele.href = preUrl.replace(/.*\/api\//, `${depthStr}/api/`) + '.html' + '#' + anchor;
  }
});

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法设计手册

算法设计手册

斯基恩纳 / 清华大学出版社 / 2009-9 / 69.00元

《算法设计手册(第2版)》是算法设计畅销书的最新版本,是设计实用且高效算法的最全面指导书。《算法设计手册(第2版)》揭密了算法的设计与分析,以简单易懂的写作风格,介绍了各种算法技术,着重强调了算法分析,全书包括两大部分,“技术”部分介绍了设计和分析计算机算法的各种方法,“资源”部分给出了大量的参考资源,以及算法实现的各种资源,此外,在作者的个人网址http://www.CS.sunysb.edu/......一起来看看 《算法设计手册》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具