`

仿造Ext Api Doc打造前端组件在线文档

 
阅读更多

项目中的前端组件已达到一定规模,平时常常有开发人员来询问我组件的用法,并且已存在很多由于使用不当造成的问题,因此有必要出一份前端组件的使用文档,方便别人,也方便自己。

使用什么样的格式让我费了不少脑筋,使用word不方便别人索取和自己更新;使用wiki,不方便自己编写;使用普通的html,成本很高。觉得如 果能做一个类似于Ext Api Doc那样的文档就很不错,使用它很方便,不光能建立起类与类的层级关系,还有很强的搜索功能。隐约感觉Ext Api Doc不是专门用Ext开发出来,而是通过源码里的注释自动生成出来,因为Ext源码里的文档和Doc是一一对应的。所以现在需要做的就是,按照一定的格 式完善注释,另外要找到这么一个自动从注释生成Ext类型文档的工具。

通过一番搜索,还真找到这么一个工具,http://www.extjs.com/forum/showthread.php?t=55214,此工具使用起来很方便,但需要注意的是运行它需要jdk1.6,怎么使用看看readme就很清楚了。

接下来,就是要按规定格式完善注释了,重点需要做以下几点:

1)class

需要在每个类前加上注释,标明类的相关信息,例如:

/**
 * @class Ext.plugins.AccountSelector2
 * @extends Ext.plugins.BaseSelector
 * 科目选择控件
 * @alias Ext.plugins.AccountSelector2
 * @author tingjia.chentj@alibaba-inc.com
 */

Ext.plugins.AccountSelector2 = function(config){

......

}

其中@class为类名,@extends为继承的基类,@alias为别名,@autho为作者。

2)cfg

需要在类的每个配置属性前加上注释,大家使用组件最关心这个组件的配置属性,例如:

/**
 * @cfg {Number} width
 * 控件宽度,default:420
 */

其中width为属性名,Number为属性类型

3)@method

需要在类方法前加上注释,例如:

/**
     * 修改某个值引起联动
     * @method updateAmount
     * @param {String} changeField 引发联动的字段(qty、price、disRate、withTax、taxRate、withoutTax)
     * @param {String} newValue 改变后的值
     * @param {record} r record
     * @param {json} defaultValue 默认值
     */
    updateAmount:function(changeField,newValue,r,defaultValue){

    ......

   }

4)@property

需要在类属性前加上注释,例如:

/**
     * combobox控件
     * @type Ext.form.ComboBox
     * @property editor
     */

其中 @property为属性名,@type为属性类型

5)@event

在事件侦听前加上注释,例如

/**
         * @event beforeaction
         * Fires before action event. Return false to cancel the subsequent action event.
         * @param {Ext.grid.GridPanel} grid
         * @param {Ext.data.Record} record Record corresponding to row clicked
         * @param {String} action Identifies the action icon clicked. Equals to icon css class name.
         * @param {Integer} rowIndex Index of clicked grid row
         * @param {Integer} colIndex Index of clicked grid column that contains all action icons
         */
         'beforeaction'

通过对以上五类元素加上注释后,再用工具自动生成,一份很方便和漂亮的文档就出来了,但此文档不能直接打开,得部署到web服务器上,因为此文档的实现用了Ajax,不过这个也很容易,在apache里加上个虚拟目录就搞定了,打开文档,效果如下:

文档效果图

 
 
分享到:
评论

相关推荐

    Ext 模仿Excel电子表格

    Ext JS是一个强大的JavaScript框架,用于构建富客户端的Web应用,它提供了丰富的组件和数据绑定机制,可以方便地创建复杂的用户界面。 描述中提到的“NULL”意味着没有具体的细节,但我们可以从博文链接推测,作者...

    小白仿造阅文首页前端练习

    【标题解析】:“小白仿造阅文首页前端练习”这个标题表明这是一个针对初学者的项目,目的是通过模仿阅文集团网站的首页来学习和实践HTML和CSS基础。在这个过程中,学习者可以熟悉网页布局、元素设计以及如何用静态...

    6个非常经典Web前端使用的炫丽进度条(一)

    在Web开发领域,进度条是不可或缺的元素,用于展示任务的完成进度或数据加载状态。本文将探讨6个经典的Web前端进度条...深入研究这些示例,不仅可以提升前端开发技能,还能激发创新思维,设计出更具特色的进度条组件。

    vueztree20开源一个无限树组件仿造ztree

    Vue.js 是一个轻量级的前端框架,以其声明式的数据绑定和组件化设计深受开发者喜爱。Vue-ZTree 2.0 就是利用 Vue 的这些优势,为开发者提供了一个用于展示和操作树型数据的高效工具。这个组件支持动态加载、节点展开...

    Cobalt Strike 4.4 猪猪版 去暗桩 去流量特征 beacon仿造真实API服务 修补

    仿真是一种通过建立模型来模拟现实世界或虚拟场景的技术,广泛应用于工程、科研和教育等领域。 仿真技术的核心是计算机模拟,它利用计算机程序和数据来表示现实世界的系统或过程,以便研究、分析或培训。...

    jQuery 仿问卷星 自定义修改问卷调查表单前端代码

    **jQuery 仿问卷星自定义修改问卷调查表单前端代码详解** 在网页开发中,创建交互性强、用户体验良好的在线问卷调查表单是一项重要的任务。"jQuery 仿问卷星"的项目,就是基于JavaScript库jQuery实现的一个类似问卷...

    仿造126,163,QQ邮箱实现的多文件无刷新上传组件

    标题中的“仿造126,163,QQ邮箱实现的多文件无刷新上传组件”指的是该资源是模仿了126、163和QQ邮箱的文件上传功能,特别是其多文件同时上传并且在页面不刷新的情况下完成的特性。这种技术在现代Web应用中非常常见,...

    前端代码备份.zip

    【前端代码备份.zip】是一个包含了前端开发者个人使用代码的压缩包。这个压缩包的主要目的是为了备份和便于管理和恢复前端项目的源代码。以下是压缩包中各文件夹和文件所代表的知识点: 1. **毕业设计管理系统**:...

    基于Python+Flask的仿造微薄-毕业设计源码+使用文档(高分优秀项目).zip

    基于Python+Flask的仿造微薄-毕业设计源码+使用文档(高分优秀项目).zip 该项目是个人高分毕业设计项目源码,已获导师指导认可通过,答辩评审分达到97分,在window10/11测试环境严格调试,下载即用,确保可以运行,...

    Vuejs前端开发教学大纲.docx

    Vue.js 是一款轻量级的前端JavaScript框架,以其易学易用、组件化开发和高效性能等特点,在现代Web开发中受到广泛应用。本教学大纲旨在帮助学生深入理解Vue.js的核心概念,掌握其基本语法,并通过实际项目开发,提升...

    仿造中国移动商城联动筛选特效

    【标题】"仿造中国移动商城联动筛选特效"所涉及的知识点主要集中在前端开发领域,特别是交互设计和JavaScript技术。此项目意在实现一个类似于中国移动商城的筛选功能,用户可以根据不同的属性进行筛选,如商品类别、...

    手机仿好孩子育儿网_HTML手机电脑网站_网页源码移动端前端js效果_H5模板_自适应css源码ui组件.zip

    本压缩包包含的是一个针对手机和电脑的HTML网站源码,设计用于仿造"好孩子育儿网"的移动端和桌面端界面。这个源码集成了前端JavaScript效果、H5模板以及自适应CSS样式,旨在提供良好的用户体验和界面设计。下面我们...

    响应式布局-仿阿里百秀项目前端源码项目.zip

    阿里百秀项目是一个展示响应式设计优秀实践的实例,通过仿造这个项目,我们可以深入理解响应式布局的核心原理和技术。 在前端开发中,Bootstrap是一个非常流行的响应式框架,它简化了创建响应式和移动优先的网站。...

    最新模板 仿造 仅学习

    标题中的“最新模板 仿造 仅学习”表明这是一个关于网站模板的学习资源,可能是某个网站设计者或开发者为了学习和研究目的,复制了一个名为“19楼”的网站模板。"19楼"可能是一个知名的论坛或者社区平台,而“2012...

    jquery超小型仿造代码

    自写的仿造jquery的代码,非常清晰的呈现了部分jquery的思路

    python 自动获取文件夹下子文件下的doc或者docx文件

    python,自动获取文件夹下的所有doc和docx文件,并且放在同一个目录 有时候需要提取出文件夹下的子文件夹下的所有类型文件,可以仿造这个写 python代码。

    仿造蜜雪冰城制作的App

    综上所述,"仿造蜜雪冰城制作的App" 是一个结合了品牌元素、产品展示、在线交易、位置服务和用户反馈等功能的综合平台。它的开发涵盖了软件工程的多个领域,包括前端界面设计、后端服务器搭建、数据库管理、支付接口...

    仿造高德地图实现路线规划和周边搜索

    总的来说,仿造高德地图实现路线规划和周边搜索,需要掌握地图API的使用、后端服务的接口调用、搜索算法的理解以及用户体验设计等多个方面的技能。MapDemo项目很可能会包含这些技术的实现,通过解压并研究该项目的源...

    仿造win10-UI

    【标题】"仿造win10-UI"项目是一个JavaScript实现的前端工程,旨在复刻Windows 10操作系统用户界面的外观和交互体验,尤其适用于平板电脑设备。它利用了现代浏览器对HTML5特性的良好支持,以创建一个与原生系统相似...

Global site tag (gtag.js) - Google Analytics