【问题标题】:Renaming application.js to application.js.coffee?将 application.js 重命名为 application.js.coffee?
【发布时间】:2013-08-15 08:57:42
【问题描述】:

开始一个新项目,我只是尝试将我的 application.js 重命名为 application.js.coffee。

Rails 引发错误: SyntaxError:意外的标识符 (在 my_path/application.js.coffee 中)

Application.js 是空的,只是 jquery 包含:

//= require jquery
//= require jquery_ujs

有什么想法吗? 谢谢

【问题讨论】:

    标签: ruby-on-rails coffeescript


    【解决方案1】:

    coffeescript 中的评论是用# 写的,所以替换为:

    #= require jquery
    #= require jquery_ujs
    

    【讨论】:

    • 好的,这行得通。就是这样,我对咖啡的使用持怀疑态度:) 将在时间限制后给出标志答案。谢谢!
    • coffeescript 真的很棒,你很快就会习惯它的约定。提醒您可以使用http://js2coffee.org/等工具轻松将js转换为coffee
    【解决方案2】:

    你为什么要这样做?

    不建议将代码添加到您的 application.js。

    如果您需要运行咖啡脚本,只需在同一文件夹中创建一个咖啡文件,它会自动包含它。

    来自文件中的 cmets:

    // This is a manifest file that'll be compiled into application.js, which will include all the files
    // listed below.
    //
    // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
    // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
    //
    // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
    // the compiled file.
    //
    // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
    // GO AFTER THE REQUIRES BELOW.
    //
    

    此文件不是您的常规 .js 文件,它的目的是为资产管道提供您的 javascript,在此处添加代码不是一个好习惯。

    无论您需要做什么,都可以通过其他方式完成......

    【讨论】:

    • 你能详细说明一下吗?为什么不推荐?
    • 我也很好奇重命名和编辑这个文件有什么缺点。例如,官方 Ruby on Rails 指南在其文档中提到了“application.js.coffee.erb”,尽管这可能只是一个通用名称。
    • 我不确定有什么缺点,但为什么要重命名呢?您始终可以在同一文件夹中创建一个 coffe 文件,并通过 application.js 通过 //= require newcoffefile 包含它
    • @RodrigoZurek 有些人喜欢一致性,这就是为什么他们想将 application.js 重命名为 application.coffee,因为他们所有的其他 javascript 都是 .coffee。您的回答错误地假设原因是将代码放入 application.coffee 并且您断言自己的偏好而没有实际确定应避免重命名 application.js 的有效技术或架构原因。如果您想将某事标记为不良做法,则需要找出原因。
    猜你喜欢
    • 2012-09-22
    • 2023-03-02
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    相关资源
    最近更新 更多