一些背景知识,跳到第二段来回答问题。我已经尝试过很多编辑器,比如您的典型开发人员,但在 Homesite/ColdFusion Studio 被吸入 Dreamweaver 之前,我仍然最喜欢它,我相信你们中的大多数人都会同意我的观点,是的……Dreamweaver。无论如何,我一直在运行 Sublime Text 2,没关系,但我觉得我需要更多的 IDE 而不是文本编辑器。为此,我已经使用 NetBeans 几个月了。我开始喜欢它了。在家里,我使用带有 TextMate 和 Coda 的 Mac,但我不介意完全迁移到 NetBeans,但是有一些问题困扰着我。最值得注意的是,它的 XSL 编辑很烦人,原因有几个,其次是我一直遇到的这个 JavaScript 问题。
我喜欢使用 ctrl+click 方法等来跳转 JavaScript 文件的能力,alt+back 向后移动并能够在导航器中查看方法和类的轮廓。但是我的问题是,在我的 Javascript 文件中,NetBeans 似乎无法弄清楚我的类及其方法。我使用一种模式来编写对我来说必不可少的单例类。我写这样的类如下:
// create class to contain code for this page
var FieldMgmt = function() {
// vars local to the class
var Fields = {}; // Store the form fields of the class
return {
// startup method
init: function() {
// initialize properties
console.log('field management intialized');
// capture the fields
this.Fields = Fields = {
field1: $('select[name=field1]') // field One
,field2: $('select[name=field2]') // field Two
,field3: $('select[name=field3]') // field Three
};
this.initEvents(); // setup events
}
// initialize events
,initEvents: function(){
}
// method 1
,method1: function(arg1, arg2){
}
// method 2
,method2: function(arg1, arg2){
}
}; // end return of FieldMgmt
}(); // end FieldMgmt
// start the code for this page
$(document).ready( function(doc){ FieldMgmt.init(); } );
下面是这个文件在我的导航器中显示的图片:
如您所见,我的方法都没有出现在导航器中,例如initEvents
, method1
,method2
等。 ctrl+click-ing 方法调用也不会转到方法声明。所以 NetBeans 只是不知道这是一个类。我之前在其他编辑器中遇到过类似的问题,例如 NotePad++,我能够通过修改用于解析文件的正则表达式来让编辑器找出我的文件。
没有这个功能我可以生存,但如果我可以让它工作,那么这将是我选择的编辑器,因为这些文件可能会变得相当大,并且能够查看所有方法并通过 ctrl+click-ing 快速跳转文件,等会很棒。
我正在使用 NetBeans 7.3,并且在 Windows Server 2003 上将所有内容更新到今天的最新版本。任何帮助将不胜感激。无论如何,我是否可以修改 NetBeans 以使其了解我的方法?有这个插件吗?提前致谢。