gpt4 book ai didi

ruby - SCSS Custom Linter 不在 mixin 或函数中

转载 作者:太空宇宙 更新时间:2023-11-03 16:42:11 25 4
gpt4 key购买 nike

我有这个 linter 规则,它验证每个变量都使用了 !default:

module SCSSLint
# Reports the use of !default in properties.
class Linter::DefaultRule < Linter
include LinterRegistry

def visit_variable(node)
return if source_from_range(node.source_range).include?('!default')

add_lint(node, '!default should be used')
end
end
end

我希望它只检查全局变量,而不是 functionmixin 中的变量。

如何让它忽略非全局范围的变量?

最佳答案

这是一个可行的解决方案:

module SCSSLint
# Reports the use of !default at the end of variable declarations.
class Linter::DefaultRule < Linter
include LinterRegistry

def visit_function(node)
return true
end

def visit_variable(node)
return if source_from_range(node.source_range).include?('!default')

return unless node_ancestor(node, 2).nil?

add_lint(node, '!default should be used')
end
end
end

关于ruby - SCSS Custom Linter 不在 mixin 或函数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44423695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com