2010-11-22 39 views
1

當我通過Ext.extend()繼承時,我無法讓Intellisense顯示Object方法以外的任何方法。 Intellisense是否可以顯示其他方法?Intellisense是否可以使用Ext.extend擴展的對象工作?

我使用了this SO question中建議的解決方法來獲取命名空間的工作方式,所以我不認爲這與此問題有關。

實施例代碼如下:

///<reference path="ext-base.js" /> 
///<reference path="ext-all.js" /> 
///<reference path="namespace.js" /> 
MNS.Production.DetailedGrid = Ext.extend(MNS.commonUI.GridPanel, 
{ 
    initComponent: function() { 
    var columns = this.getColumns(); 
    }, 

    getColumns: function() { 
    var columns = 
    //...build columns 
    }, 
    //.... 
    //....Additional methods, etc. 
}); 


var detailedGrid = new MNS.Production.DetailedGrid(); 

雖然我獲得智能用於MNS.Production.DetailedGrid()命令,我沒有得到任何智能感知上detailedGrid對象的方法,除了默認的方法。我如何讓Visual Studio顯示這些方法?

回答

0

我發現,雖然有two ways to extend an object using ExtJS,智能感知將與你的代碼的唯一方法是,如果你使用的語法如下:

///<reference path="ext-base.js" /> 
///<reference path="ext-all.js" />  
// create constructor for new class 
Ext.ResizableConstrained = function(el, config){ 
    Ext.ResizableConstrained.superclass.constructor.call(this, el, config); 
}; 

// extend the base class 
Ext.extend(Ext.ResizableConstrained, Ext.Resizable, { 
    setXConstraint : function(left, right){ 
     // Obtain a reference to parent dd property and setXConstraint 
     this.dd.setXConstraint(left, right); 
    }, 

    setYConstraint : function(up, down){ 
    // Obtain a reference to parent dd property and setYConstraint 
    this.dd.setYConstraint(up, down); 
    } 
}); 

的///引用必須在文件頂部。

0

你見過這個MSDN帖子嗎? MSDN Blog

+0

該博客文章提到該修補程序是針對2008年的,並且將針對下一個版本進行修補。因爲我使用的是2010年,所以我沒有想到它能夠正常工作,但無論如何我都試過了,沒有運氣。 – amccormack 2010-11-22 18:48:31

相關問題