我已经为我创建的一些自定义对象创建了一个智能感知文件,如果这些方法只能返回一个类型,它就可以正常工作。
作为一个例子来说明我的问题,如果智能感知文件包含:
var Bob = function() {
/// <signature>
/// <returns type="Bob"/>
/// </signature>
}
var Fred = function() {
/// <signature>
/// <returns type="Fred"/>
/// </signature>
}
Bob.prototype.DoWhatBobDoes = function() {
/// <signature>
/// <returns type="Bob"/>
/// </signature>
}
Fred.prototype.DoWhatFredDoes = function() {
/// <signature>
/// <returns type="Fred"/>
/// </signature>
}
然后在 Visual Studio 中我可以做到这一点,即它知道 DoWhatFredDoes() 方法返回一个 Fred 对象:
但是我的一些方法可以有多种返回类型,例如 DoWhatFredDoes() 方法可以返回 Bob 或 Fred 对象。无论如何在智能感知文件中指定这个?
我已经尝试将其修改为此,但它不起作用:
var Bob = function() {
/// <signature>
/// <returns type="Bob"/>
/// </signature>
}
var Fred = function() {
/// <signature>
/// <returns type="Fred"/>
/// </signature>
}
Bob.prototype.DoWhatBobDoes = function() {
/// <signature>
/// <returns type="Bob"/>
/// </signature>
}
Fred.prototype.DoWhatFredDoes = function() {
/// <signature>
/// <returns type="Fred|Bob"/>
/// </signature>
}
我查看了https://msdn.microsoft.com/en-us/library/hh542719.aspx上的文档,并没有提到多种返回类型,所以也许这是不可能的?