如何在ReinforcedTypings生成的TS文件顶部添加额外注释(如ESLint禁用语句)
在ReinforcedTypings 1.6.2生成的TS文件顶部添加ESLint注释
你可以通过两种方式实现需求,根据期望的注释位置选择:
方法一:直接添加头部内容(注释在自动生成注释之前)
如果希望自定义注释出现在ReinforcedTypings自动生成的// Generated by Reinforced.Typings...注释之前,直接在配置中使用AddHeader方法即可:
代码配置方式
var rtb = new ReinforcedTypingsConfigurationBuilder(); // 添加你的类型映射配置 rtb.AddNamespace("Your.Namespace") .ExportAsInterface<YourClass>(); // 将ESLint禁用注释添加到文件头部 rtb.AddHeader(@"/* eslint-disable max-classes-per-file */ /* eslint-disable @typescript-eslint/no-inferrable-types */"); // 生成TypeScript文件 var generator = new CodeGenerator(rtb.Build()); generator.Generate();
XML配置方式
如果使用XML配置文件,在<Global>节点下添加<Header>:
<ReinforcedTypings> <Global> <Header><![CDATA[/* eslint-disable max-classes-per-file */ /* eslint-disable @typescript-eslint/no-inferrable-types */]]></Header> <!-- 其他全局配置 --> </Global> <!-- 类型映射配置 --> </ReinforcedTypings>
方法二:插入到自动生成注释之后
如果需要将自定义注释放在自动生成的注释后面,可以通过订阅BeforeFileExport事件修改文件内容:
var rtb = new ReinforcedTypingsConfigurationBuilder(); // 配置你的类型映射... var generator = new CodeGenerator(rtb.Build()); generator.BeforeFileExport += (sender, args) => { var autoCommentMarker = "// Generated by Reinforced.Typings"; var markerIndex = args.Content.IndexOf(autoCommentMarker); if (markerIndex == -1) return; // 找到自动注释行的结尾 var lineEndIndex = args.Content.IndexOf('\n', markerIndex); if (lineEndIndex == -1) return; // 在自动注释行后插入自定义注释 var customComments = @"/* eslint-disable max-classes-per-file */ /* eslint-disable @typescript-eslint/no-inferrable-types */ "; args.Content = args.Content.Insert(lineEndIndex + 1, customComments); }; generator.Generate();
这样就能精准控制注释的位置,满足你的需求。
内容的提问来源于stack exchange,提问作者kevinob
相关产品推荐
相关产品推荐

