2

Возможно ли, что скрывает определенные функции/поля от отображения в раскрывающемся списке javascript intellisense в Visual Studio 2008? Или XML-документ XML-документа, назвав рядовых определенным образом?Скрывать частных лиц от Javascript Intellisense

Я видел <private /> в Jquery файл vsdoc, что подразумевает именно такое поведение, но не соответствует моим ожиданиям

{ 
    __hiddenField: 0, 
    /// <private /> 
    increment: function(){ 
     /// <summary>Increments a private variable</summary> 
     __hiddenField++; 
    } 
} 

Но поскольку поля не могут содержать документацию (потому что они не имеют тела), они имеют для документирования наверху. Но до сих пор не работает:

{ 
    /// <field name="__hiddenField" type="Number" private="true">PRIVATE USE</field> 
    __hiddenField: 0, 
    increment: function(){ 
     /// <summary>Increments a private variable</summary> 
     __hiddenField++; 
    } 
} 

невыполнима является вполне возможным ответом и будет принят, если у вас есть знания, что это на самом деле не представляется возможным.

ответ

1

Я не уверен, о том, как скрыть это от IntelliSense, но вы всегда можете использовать затворы, чтобы полностью скрыть переменную, например:

(function(){ 
    var hiddenField = 0; 

    // not sure how you're defining your object; 
    // I'll just assume a global variable 
    window.something = { 
     increment: function(){ 
      /// <summary>Increments a private variable</summary> 
      hiddenField++; 
     } 
    } 
})(); 

Это создает анонимную функцию вокруг определения , поэтому window.something.increment() будет работать, и «hiddenField» действительно скрыт.

0

Я думаю, что для создания функции/поля вам нужно добавить дефис перед его именем.

_increment: function(){ 
    /// <summary>Increments a private variable</summary> 
    __hiddenField++; 
} 
Смежные вопросы