如何用grunt-ngdocs创buildapi文档

我试图通过grunt-ngdocs创buildAPI文档。 部分被创build,但index.html没有正确的链接。

我在我的gruntfile.js中:

module.exports = function (grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), karma: { unit: { configFile: 'karma.conf.js' } }, uglify: { options: { // the banner is inserted at the top of the output banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n' }, dist: { files: { 'web/js/app.min.js': ['web/js/app.js'] } } }, ngdocs: { options: { dest: 'docs', scripts: ['web/js/app.js'], title: 'My Documentation' }, api: { src: ['web/**/*.js'], title: 'API Documentation' } }, clean:['docs','testResult'] }); grunt.loadNpmTasks('grunt-karma'); grunt.loadNpmTasks('grunt-ngdocs'); grunt.loadNpmTasks('grunt-contrib-uglify'); grunt.loadNpmTasks('grunt-contrib-clean'); grunt.registerTask('default', ['clean','uglify', 'ngdocs', 'karma']); }; 

和我的js文件是这样的

  /** * @ngdoc overview * @ngdoc directive * @name myApp.maincontroller:controller * @description * * # myApp * The factoryName is my favorite service in the world. * */ var myApp = angular.module('myApp',[]); myApp.controller("MainController", function($scope) { $scope.model = { myValue: "Run you fools!" }; }); /** * @ngdoc function * @name mySuperFunction * @returns {int} The int representing a Firebase resource */ function mySuperFunction() { var i = 5; var j = 5; i += j; return i; } 

但是当我跑步

 grunt 

在命令行中,结果是这样的

  C:\Users\Lino Simões\Documents\bitbucket\test>grunt -d --force Running "clean:0" (clean) task [D] Task source: C:\Users\Lino Simões\Documents\bitbucket\test\node_modules\grun t-contrib-clean\tasks\clean.js Cleaning docs...OK Running "clean:1" (clean) task [D] Task source: C:\Users\Lino Simões\Documents\bitbucket\test\node_modules\grun t-contrib-clean\tasks\clean.js Cleaning testResult...OK Running "uglify:dist" (uglify) task [D] Task source: C:\Users\Lino Simões\Documents\bitbucket\test\node_modules\grun t-contrib-uglify\tasks\uglify.js File web/js/app.min.js created: 796 B → 210 B Running "ngdocs:api" (ngdocs) task [D] Task source: C:\Users\Lino Simões\Documents\bitbucket\test\node_modules\grun t-ngdocs\tasks\grunt-ngdocs.js Generating Documentation... DONE. Generated 2 pages in 256ms. Running "karma:unit" (karma) task [D] Task source: C:\Users\Lino Simões\Documents\bitbucket\test\node_modules\grun t-karma\tasks\grunt-karma.js INFO [karma]: Karma v0.12.17 server started at http://localhost:9876/ INFO [launcher]: Starting browser PhantomJS INFO [PhantomJS 1.9.7 (Windows 7)]: Connected on socket dFX-dKGVINA6PBjB5Gu9 wit h id 91061839 PhantomJS 1.9.7 (Windows 7): Executed 8 of 8 SUCCESS (0.008 secs / 0.004 secs) Done, without errors. 

所以,这会产生2个文件,但是当我去index.html文档下我有这样的:

在这里输入图像描述

但在我的文档/ partials / api /我有由ngdocs创build的部分。

我的项目树是这样的:

在这里输入图像描述

你的web / js / app.js中angular.jsangular-animate.js吗? 核实。 并添加到“选项” html5Mode: false

对于ng1.6为我工作:

 ngdocs: { all: ['app/**/*.js'] } 

你会看到旧版本的angular1.2。*英寸

 cat docs/js/angular.min.js | grep v1 AngularJS v1.2.16 

但它不影响你的源文件。

另外,不要忘记运行服务器生成的文件夹文档:

例如使用python

 pushd ./dist; python -m SimpleHTTPServer 9000; popd #v 2.* pushd ./dist; python -m http.server 9000; popd #v 3.* 

不幸的是,添加angular.js和angular-animate.js脚本选项不适用于我