当我尝试理解其他人的代码时,我会将事情评论出来,打破它,并在我自己的小岛评论栏中写下一些注释:
// ----------------------------------
// KJ NOTES:
// Searches for screenreader text, which is metadata
// E.preventdefault() is to prevent click from firing off (on the link that its on)
// IMPORTANT `toggleClass` which is a jQuery function to add submenu controls ★
//
// Dropdown symbol was defined above, its just a class. We modify the text to `-`
// .text is jQuery
// ----------------------------------
container.find( '.dropdown-toggle' ).click( function( e ) {
var _this = $( this ),
screenReaderSpan = _this.find( '.screen-reader-text' );
dropdownSymbol = _this.find('.dropdown-symbol');
dropdownSymbol.text(dropdownSymbol.text() === '-' ? '+' : '-');
e.preventDefault();
_this.next( '.children, .sub-menu' ).toggleClass( 'toggled-on' ); //★ This is what controls submenus from appearing
我的很多评论都是多余的,毫无意义,因为大多数代码都是不言自明的。但这有助于我了解正在发生的事情。
PhpStorm是否有办法识别符合特定条件的所有岛屿代码注释?所以我可以按一个热键将它们全部折叠。
由此:
// ----------------------------------
// KJ NOTES
// ....comments here
// ----------------------------------
到此:
// ... KJ NOTES
或默认
// ...
按一个热键。可能有一些控件可以让它在特定文件上运行,也可以在整个仓库中运行。