我刚刚发现,通过 WebEssentials 2013,我可以右键单击 CS 文件并选择 Web Essentials->创建 Typescript Intellisense 文件。
目前,所有生成的接口(interface)都放在“server”模块中。我该如何改变这个?
最佳答案
这是一个很好的问题(我不知道答案),所以我在 Web Essentials 的代码中进行了搜索,是的,这是可能的!您需要执行以下操作:
使用以下代码创建一个新的 .cs 文件(不要在生成定义的同一文件中执行此操作,否则会引发错误)。
[System.AttributeUsage(AttributeTargets.Class)]
sealed class TypeScriptModuleAttribute : Attribute
{
private readonly string moduleName;
public TypeScriptModuleAttribute(string moduleName)
{
this.moduleName = moduleName;
}
}
现在将其应用到一个类:
[TypeScriptModule("foo")]
public class TestClass
{
<snip>
}
它将生成如下内容:
declare module foo {
interface TestClass {
}
}
如果您有兴趣,可以在此处找到 Web Essentials 执行此操作的代码:link以及此处写入文件的代码:link2
关于typescript - WebEssentials 生成 Typescript Intellisense 文件时如何配置模块名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25312981/