How to create api documents using grunt-ngdocs

I am trying to create API documents via grunt-ngdocs. Particles are created, but index.html does not have proper references to it.

I have in my 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']); }; 

and my js file like this

  /** * @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; } 

but when i started

 grunt 

on the command line, the result is

  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. 

so it generates 2 files, but when I go to index.html in the docs, I have this:

enter image description here

but in my docs / partials / api / I have partial files created by ngdocs.

my project tree is as follows:

enter image description here

+6
source share
2 answers

Do you have angular.js and angular -animate.js in your website / js / app.js? Check this. And add in the “options” html5Mode: false

+4
source

for ng1.6 works for me:

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

you will see the old version of angular 1.2. * in

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

but this does not affect your source files.

also do not forget to start the server for the created document files:

e.g. using python

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

unfortunately adding angular.js and angular -animate.js options to scripts doesn't work for me

0
source

Source: https://habr.com/ru/post/972662/


All Articles