有没有一种方法可以让Ruby在提供.js文件之前对其进行编辑
Is there a way to make Ruby edit .js files before they are served?
我想写一些东西(用Ruby),在将其提供给用户之前,它会自动将console.log()添加到我的javascript资产的每一行。这个工具将极大地帮助我调试大型js文件,节省时间并给我一个回溯。我知道rails有各种内置的助手。。。也许是发球前?我知道链轮在上菜前会把文件捣碎。。
以下是解决方案:
if Rails.env.development?
Sprockets::Server.module_eval do
alias_method :ok_response_orig, :ok_response
def ok_response(asset, env)
asset.instance_eval do
#The next string to be appended
@source += %{
'n;(function(){
console.log("Called from #{File.basename(@pathname)}");
})();
}
@length = Rack::Utils.bytesize(@source)
@digest = Digest::MD5.new.update(@source).hexdigest
end if asset.instance_eval{@pathname.to_s}.include?(".js") #You might want to add .coffee here
ok_response_orig(asset, env)
end
def etag_match?(*args)
true
end
end
end
享受吧。附言:仅在开发环境中使用。
相关文章:
- 从文本文件js中读取列表
- 当我用ctrl+p搜索时,为什么要在谷歌chrome上使用inspect来调试缺少显示文件js
- 获取用于外部JavaScript文件(.js)的代码提示
- 如何将Javascript文件(.js文件)放在web服务器中
- 如何将 JavaScript 文件(.js 文件)添加到 C# 项目并从 C# 代码调用 JavaScript 方法
- 在 Node 中包含 javascript 文件.js无需 require('.') ing
- 如何使用jquery显示多个文件.多文件.js
- 使用 PDF 打开 PDF 文件.js而不将文件作为查询字符串传递
- 转换颜色十六进制值以用于三个 JSON 文件.js
- 如何使用 jQuery 选择多个文件.多文件.js插件?使用单个关闭按钮一次选择多个文件
- 如何在 Gulp 任务中间添加 CSS 文件.js
- 如何从Dropzone上传和删除文件.js
- 如何在视频中添加视频文件.js 4.2.1.
- 从快速节点下载文件.js具有 JWT 授权
- 访问 JavaScript 文件.js中的 C# 变量
- 在节点中热重载外部 js 文件.js如果文件有任何更改
- 如何在一台服务器中运行不同的.js文件.js NODE JS中的文件
- 如何在多文件.js中上传文件时检查文件扩展名
- 将文件.js中的var导入到模块joomla的模板中,并使用后台进行修改
- 在path项目中编写文件js脚本