在code字符串中我存储了一段代码,可以是CSS、SASS、SCSS、JavaScript或CoffeeScript。内容来自用户,在保存到数据库之前,我需要验证语法。
我需要检查语法是否正确。目前,我使用的是一种可以工作的丑陋的黑客技术。你有更好的解决方案吗?
def check_js
if language == 'coffee' # CoffeeScript
CoffeeScript.compile code
else # JavaScript
Uglifier.compile code
end
rescue ExecJS::RuntimeError => e
errors.add :code, e.message
end
def check_css
if language == 'css' # CSS
Sass::CSS.new(code).render
else # SASS, SCSS
Sass.compile code, syntax: language.to_sym
end
rescue Sass::SyntaxError => e
errors.add :code, e.message
endhttps://stackoverflow.com/questions/41396663
复制相似问题