Tag: javascript

为什么我的rails资产管道中的js文件没有被编译?

我遇到了类似于这个问题的问题: Rails资产管道不包括application.js中的必需文件然而,这个问题已经关闭,所以我重新询问它,但是我的具体情况。) 环境: Ruby 2.0.0,Rails 3.2.8,OSX 10.7.5,Chrome 28.0.1500.95 我遇到的主要问题 放置在“/ app / assets / javascripts”中的文件似乎没有编译或出现在“/ public / assets”中 一个例子 如果我在app / assets / javascripts中放置一个这样的test.js文件: alert(“Hello!”); 然后在我的应用程序中重新加载页面,此警报应该出现。 (我正在复制Ryan Bates在资产管道上的Railscast中在约6:30的video中所做的事情)但是,没有出现警报。 调试尝试 我做了一些测试来尝试调试这个。 (正如下面的@Aidan所推荐的)如果我“rm -rf public / assets”,然后在我的布局中添加“javascript_include_tag’test’”,则会出现警报。 但是,也许是因为我是n00b,我不知道这有助于我调试问题。 如果我将// = require_test添加到app / javascripts / application.js到我的清单文件,这不会导致警报出现。 我的清单文件(app / javascripts / application.js) // This is a manifest file that’ll […]

jQuery代码即使在被注释掉后仍然被执行

我有一个基本的.js文件 //$(‘#show’).html(‘ ‘show’)) %>’); 调用.js文件时,上面的代码会被执行,部分会被渲染,即使它被注释掉了。 删除代码时,部分永远不会被渲染。 DOM保持不变,但我可以在命令行看到服务器部分呈现的内容。 是什么赋予了?

带Rails的Dropzonejs – 从服务器删除文件

我正在使用dropzonejs-rails gem并使用dropzone进行文件管理。 我上传工作很棒,但删除文件让我感到痛苦。 我无法让侦听器附加,以便ajax将命中我的服务器。 我的强项是Ruby on Rails,我只有有限的javascript经验,所以这可能是真正的问题……但也许有人可以帮助我解决我[可耻的] 2天的斗争。 Dropzone在上传文件后正在dropzone中正确显示previewTemplate, addRemoveLinks: true在缩略图预览上显示删除链接。 我的目标是在用户单击文件的删除链接时,应该向服务器发送请求以删除该文件。 我尝试了许多不同的方法来自博客,dropzone FAQ,github问题等。我最接近成功的是: https : //github.com/enyo/dropzone/issues/456 。 我尝试在成功上传后向.dz-remove按钮添加一个事件监听器。 此侦听器旨在使用ajax请求命中服务器以删除该文件。 目前,单击预览缩略图上的删除链接仅从dropzone中删除预览缩略图,但不会使用ajax命中服务器。 这是javascript代码: // Listening for Dropzone upload success // imageDropzone is the camelized version of the dropzone form’s id. Dropzone.options.imageDropzone = { init: function() { this.on(“success”, function(file, response, event) { // Loads image ID to […]

使用外部服务Shopify定制搜索

我的情况:我们有一个Shopify商店,我们还有一个在AWS上实施和托管的搜索引擎。 我们需要在Shopify商店中使用该搜索引擎而不是默认/搜索。 理想情况下,当用户尝试搜索某些内容时,他们的查询(以及可能的其他一些内容,如前端的属性选择器/复选框)将传递给我们的搜索引擎。 然后在结果返回后,它们将在前端渲染。 我的问题:我该怎么做? 选项1:修改主题代码,注入一些javascript来调用搜索引擎(可能,但很乱) 选项2:编写应用程序,将我的搜索引擎包装在应用程序中,并以某种方式将其插入商店(我不知道如何执行此操作) 选项3:类似于选项1,但编写应用程序,使用应用程序向主题注入一些代码,并以某种方式处理工作。 (我不知道怎么做) 我在这里找到了类似的post: 在shopify中编写自定义搜索应用程序,但下面的答案更多是关于过滤/修改默认shopify引擎返回的搜索结果,我想改为使用我自己的搜索引擎。

Rails 4 – 带有dependent-fields-rails的条件JS

我正试图弄清楚如何在我的Rails 4应用程序中使用dependent-fields-rails gem。 我迷路了。 我在我的供应商javascripts文件夹中包含了underscore.js并更新了我的application.js以包含(在底部,正上方需要树): //= require underscore //= require dependent-fields $(document).ready(function() { DependentFields.bind() }); 以我简单的forms,我有: ‘Any decision points?’, id: ‘check_project_milestones’ %> Milestones 但是,当我重新启动服务器并呈现表单时,会显示第一个具有div id的问题(未选中复选框),并且内容标记内的内容也会显示。 我希望它被隐藏,直到选中复选框。 我在driftingruby.com上找到了一个教程,展示了如何设置它。 我唯一可以猜到的是,可能需要使用turbo链接才能完成这项工作? 我禁用它因为我使用olark。 当我检查控制台是否有错误时,我可以看到这个,这似乎是相关的: [Error] Failed to load resource: the server responded with a status of 404 (Not Found) (underscore-min.map, line 0) 我还应该补充一点,我在回答我之前关于这个问题的问题时尝试了所有建议,但是找不到解决方案: Rails 4 – JS用于简单forms的依赖字段 谁能看到我做错了什么?

Heroku和Rails 4:一些javascript无法正常工作

我正在尝试在Heroku Rails 4应用程序上显示一个javascript项目。 在我的本地开发机器上,一切都运行得很好。 无法让它在Heroku上运行。 在我的application.html.erb文件中,我添加了: 在另一个视图文件(events.html.erb)我有: $(document).ready(function() …code to add data to a timeline using getjson()… ` 它指的是assets> javascripts文件夹中的timeline.js文件。 添加事件时(使用Rails CRUD操作,javascript代码调用getJson()方法并将事件添加到时间轴。这在本地计算机上按预期工作。 当我推送到Heroku时,我可以通过rails添加事件,但不显示时间轴。 我最初的想法是没有在Heroku上加载Javascript,所以我添加了一个简单的: alert(‘Displays OK’) 调用,这在Heroku(以及我的本地机器)上显示正常。 在Heroku上查看页面源代码时,我可以看到: 所以似乎timeline.js文件是预编译的(它似乎是时间轴js的最小化版本)。 在我的本地机器上,我没有看到预编译的js文件,但我看到: 事实上,在Heroku上,它显示了javascript警报,但没有显示时间轴,似乎表明某些内容与预编译中的javascript代码混淆了。 我在heroku日志中看不到任何明显的东西。 它说slug编译成功完成,我看不到错误消息。 有没有办法可以强制Heroku不使用预编译的js文件,所以我可以使用Heroku: 我在production.rb文件中有以下内容: config.serve_static_assets = false config.assets.js_compressor = :uglifier config.assets.compile = true config.assets.compress = true config.assets.digest = true config.assets.debug = false 希望有人可以帮助我。 这已经困扰了我好几天了。 […]

如何在Rails中的erb代码中使用JavaScript变量?

我有一个JavaScript变量: var selectValUser = $(‘.select_user :selected’).val(); 我需要在同一页面上的erb代码中使用此变量,即 我该怎么做?

如何使用Elliptic Curves Diffie-Hellman和JS中的SJCL以及Ruby中的OpenSSL

使用Elliptic-Curves Diffie-Hellman,我想在客户端上连接SLCL – JS (文档) ,在服务器上连接OpenSSL – Ruby (文档) 。 我在这里发现了一个类似的问题,但它没有得到真正的回答,而且它也不是我真正想要的,因为它使用的是sjcl.ecc.elGamal.generateKeys(384, 10)而我希望使用sjcl.ecc.curves[‘c384’] < – NIST 尽管如此,我仍然使用和修改他的代码进行测试,因为我在使用sjcl.ecc.curves[‘c384’]生成单个公共点密钥时遇到了问题,这就是我想出来的。 //Javascript keypair = sjcl.ecc.elGamal.generateKeys(384, 10); console.log(keypair.pub._point.toBits()); //Changed from his serialize() 这输出到 [-1992414123, 638637875, 1917312913, 73389700, -425224557, 743777818, 970253455, 723842951, -1751664279, 982132367, -1949786746, 1067402923, -869929568, 157928816, 1651634060, 1968161300, -216192372, -1858642177, -1345910998, -2128793177, -1325754797, 143080818, 1868787479, -484135391] 使用输出ruby: #Ruby pointArr = […]

使用angular js通过rails paperclip提交文件

我正在尝试使用angular将文件作为参数发送到rails,然后让rails通过paperclip将该文件保存为用户附件。 我得到的最远的是获取上传内容的轨道,但它最终成为带有单行“目标文件”的txt文件。 这是相关的Angular a.uploadAnonRes = function(app){ if(window.FileReader){ console.log(“supported”)}; console.log(($(‘.anonUploadField’))[0].files); http = { method: “PUT”, url: ‘/admin/upload_anon_res.json’, params: { anon_file: btoa(($(‘.anonUploadField’))[0].files[0]), user_id: app.raw_app.user_id } }; $http(http).success(function(data){ console.log(“success”); }); }; 这是相关的轨道 def upload_anon_res user = User.find(params[:user_id]) user.anon_resume = decode_res user.save respond_to do |format| format.json{ render json: user, root: false } end end def decode_res decoded_data = Base64.decode64(params[:anon_file]) […]

CoffeeScript – 无与伦比的外观

我一直在尝试将我的工作javascript代码传递给CoffeeScript,但我无法传递此错误: 55号线无与伦比的OUTDENT 这是coffeescript代码 $(document).on(“click”,”.save_button”, -> $form = $(this).parent().parent().parent().parent().parent().parent() $form.bind(“ajax:complete”, -> $actionURI = $form.attr(“action”); $.get(window.location.protocol+”//”+window.location.host+$actionURI+”.js”,(data) -> $form.parent().parent().prev().html(data); //Line 55 closeSaveElement() ,”html”) ); $form.submit(); return false; ); 我试过放和擦除; 到处都是,但我没有错。 我也尝试更改-> for =>但弹出相同的错误。