能否在代码块中显式设置self类型提示以获取YARD类属性类型支持?
问题解答
可以通过显式标注self的类型来获得目标属性的类型提示支持,具体实现方式如下:
具体写法
在factory :item代码块内添加YARD的@type注解,明确指定self的类型为Item:
factory :item do # @type self: Item title { "示例标题" } description { "示例描述" } end
原理说明
- YARD的
@type注解能够显式指定变量(包括上下文的self)的类型,当标注@type self: Item后,编辑器的类型提示工具会识别当前代码块内的self为Item实例,从而关联到Item类中通过@!attribute定义的title、description等属性的类型信息,进而提供对应的代码补全和类型提示。 - 该方式仅利用YARD的类型注解能力,和FactoryBot本身的功能无关。
内容的提问来源于stack exchange,提问作者Nikita Fedyashev
相关产品推荐
相关产品推荐

