ruby-on-rails – 在Rails资源管道(application.js)中排除* .spec.js文件

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在Rails资源管道(application.js)中排除* .spec.js文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图遵循John Papa的AngularJs 1.x风格指南( organising tests),并将* .spec.js文件(将使用Karma执行)放在客户端代码旁边,这样就产生了一些文件,如some.filter.js和some. filter.spec.js彼此相邻.

但是,我需要避免的是在资源管道中包含* .spec.js文件.

现在看到的唯一选择是避免使用// = require_tree.在application.js文件中明确指定每个单个文件,或放弃在代码旁边保留spec文件.

有没有更好的方式来实现所期望的行为?

(我使用链轮3.5.2和轨道4.2.6)

解决方法

Sprockets本身不实现文件globbing(还) – 这只能通过提供自定义DirectiveProcessor来实现.幸运的是,已经有一个宝石提供了你想要的: https://github.com/backupify/sprockets-glob

从文档:

# config/initializers/sprockets.rb
require 'sprockets/glob'
Rails.application.assets.register_processor('application/javascript',Sprockets::Glob::DirectiveProcessor)

# application.js
//= require_glob features/**/*.js
//= stub_glob features/**/*test.js
原文链接:https://www.f2er.com/ruby/266062.html

猜你在找的Ruby相关文章