【问题标题】:Commenting Angular 2 / Ionic 2 project with JSDoc用 JSDoc 评论 Angular 2 / Ionic 2 项目
【发布时间】:2016-10-19 06:52:43
【问题描述】:

我正在尝试使用 JSDoc 开始记录我的 Ionic 2 应用程序,但我在使用 Angular 2 的语法时遇到了困难。

例如,我的应用顶部有以下代码:

import {App, Events, IonicApp, Platform} from 'ionic-framework/ionic';
import {UserData} from './providers/user-data';

@App({
  templateUrl: 'build/app.html',
  providers: [UserData],
  config: {

  }
})

当试图解析这个文件时,JSDoc 给出了这个错误,因为 @App:

ERROR: Unable to parse /home/user/Projects/mobileApp/app/app.js: Line 4: Unexpected token ILLEGAL

另外,我的构造函数看起来像这样(我使用了 Ionic 2 的教程模板):

class MyApp {
  constructor(app: IonicApp, platform: Platform, events: Events, userData: UserData) {

  }
}

这会产生错误:

ERROR: Unable to parse /home/user/Projects/mobileApp/app/app.js: Line 27: Unexpected token :

有人可以告诉我如何解决这些错误吗?

感谢您的帮助。

【问题讨论】:

    标签: angular jsdoc ionic2 jsdoc3


    【解决方案1】:

    Angular2 使用在 ES6 上增强的 TypeScript,但实际上并不是 JavaScript,所以 JSDoc 无法理解它。尝试使用 typedoc:http://typedoc.org/

    【讨论】:

    • 谢谢,我去看看。我使用的是 Ionic2 和 Angular2 的 Javascript 版本,而不是打字稿,它仍然适用吗?
    • 在您给定的示例中,您使用的是 TypeScript(类型注释、装饰器)。当然,您的应用程序在运行(或部署)期间会被转译为原始 JavaScript(没有浏览器直接支持 TypeScript)。关于 TypeScript 和 JavaScript 的区别还有一些解释stackoverflow.com/questions/12694530/…
    • TypeDoc 工作得非常好,感谢您的提示。也尝试一下 Ionic 的 typescript 版本,似乎越来越流行,所以不妨学习一下。
    【解决方案2】:

    ES7 JS 代码应先转译为 ES5(通过 Babel)或 ES6(通过 TypeScript,将 .js 文件重命名为 .ts),然后再将其提供给 JSDoc。

    文档构建过程可能独立于应用程序捆绑过程。

    【讨论】:

      猜你喜欢
      • 2018-10-06
      • 1970-01-01
      • 2017-12-23
      • 1970-01-01
      • 2016-06-26
      • 2013-07-10
      • 1970-01-01
      • 2016-05-24
      • 1970-01-01
      相关资源
      最近更新 更多