@@ -243,7 +243,27 @@ function attachModuleSymbols(doclets, modules) {
243243function buildNav ( members , view , templatePath ) {
244244 var sorted = sortNav ( members ) ;
245245 view . categories = buildCategories ( sorted , templatePath ) ;
246- view . navMap = buildNavMap ( sorted ) ;
246+ view . navMap = buildNavMap ( sorted , view . linkto ) ;
247+ var methods = { } ;
248+ for ( const key in view . navMap ) {
249+ if ( Object . hasOwnProperty . call ( view . navMap , key ) ) {
250+ const element = view . navMap [ key ] ;
251+ const m = element . methods . map ( e => {
252+ return e . name ;
253+ } ) ;
254+ if ( ! element . fileName && m . length > 0 ) {
255+ console . log ( "没有文件名的类:" , element . longname , element . type , m )
256+ }
257+ if ( methods [ element . fileName ] ) {
258+ console . log ( "重复的文件名:" , element . longname , element . fileName , element . type , m )
259+ } else {
260+ methods [ element . fileName ] = m ;
261+ }
262+
263+ }
264+ }
265+ var methodsPath = path . join ( outdir , 'methods.json' ) ;
266+ fs . writeFileSync ( methodsPath , JSON . stringify ( methods ) , 'utf8' ) ;
247267}
248268
249269function sortNav ( members ) {
@@ -291,12 +311,13 @@ function buildCategories(members, templatePath) {
291311 * @param {array<object> } members.events
292312 * @return {string } The HTML for the navigation sidebar.
293313 */
294- function buildNavMap ( members ) {
314+ function buildNavMap ( members , linkto ) {
295315 this . navMap = { } ;
296316 _ . each ( members , function ( v ) {
297317 var nav ;
298318 if ( v . kind == 'namespace' ) {
299319 nav = {
320+ fileName :`${ linkto ( v . meta . filename ) } #${ v . name } ` ,
300321 type : 'namespace' ,
301322 longname : v . longname ,
302323 version : v . version ,
@@ -320,6 +341,7 @@ function buildNavMap(members) {
320341 } ;
321342 } else if ( v . kind == 'class' ) {
322343 nav = {
344+ fileName :`${ linkto ( v . meta . filename ) } #${ v . name } ` ,
323345 type : 'class' ,
324346 longname : v . longname ,
325347 name : v . name ,
@@ -344,6 +366,7 @@ function buildNavMap(members) {
344366 } ;
345367 } else if ( v . scope === 'global' ) {
346368 nav = {
369+ fileName :`${ linkto ( v . meta . filename ) } #${ v . name } ` ,
347370 type : 'global' ,
348371 longname : v . longname ,
349372 version : v . version ,
0 commit comments