尝试习惯Visual Studio的XML javascript注释语法。我有一个关于类型的问题。假设我有一个自定义类型,如...
namespace.types.User = function(_id, _name) {
/// <field name="id" type="Number">ID of the user</field>
/// <field name="name" type="String">Name of the user</field>
this.id = _id;
this.name = _name;
};
如果我想稍后在<field>
中引用该类型,我会做类似的事情......
namespace.session = function() {
/// <field name="CurrentUser" type="namespace.types.User">The current User of the session</field>
this.CurrentUser = new namespace.types.User('foo', 'bar');
};
但是,当我这样做时,Intellisense会向我显示.CurrentUser
表示但的说明,它不会显示.id
或.name
的任何建议。换句话说,它就像是一个没有其他类型数据的普通对象。
如何获取VS智能以获取更丰富的自定义对象描述?
答案 0 :(得分:1)
尝试为函数签名中的参数添加xml注释。
namespace.types.User = function(_id, _name) {
/// <param name="_id" type="Number" /></param>
/// <param name="_name" type="String" /></param>
}
似乎不是///&lt; field&gt;&lt; / field&gt;语法有助于字段值的intellisense,它只从分配中获取智能感知。因此,由于它不知道传入参数的类型是什么,因此它们不会传递到字段上。
你会认为添加///&lt; field&gt;&lt; / field&gt;将覆盖字段的intellisense类型。特别是如果您曾使用IDE或支持来自代码注释的intellisense的工具。但目前在VS 2010中似乎并非如此。
此外,您可能不希望将名称空间用作变量或标识符,即使它是示例或替换实际名称空间。
命名空间是javascript的保留关键字。 (虽然有些人喜欢mozilla保留了包裹)。