gpt4 book ai didi

ruby-on-rails - Rails 和 CoffeeScript 在生产环境中编译错误

转载 作者:行者123 更新时间:2023-12-02 11:04:48 25 4
gpt4 key购买 nike

在开发环境中,我的 CoffeeScript 文件以某种方式正确编译。但是当我将它们编译用于生产时,我会得到这样的东西

CoffeeScript :

$->
alert "hello world"

编译为 Javascript
(function() {
$(function(){
alert("hello world");
})
}).call(this)

我检查了是否有缺失的缩进和间距错误,或者是否混合了制表符和空格,但没有。奇怪的是,当我使用来自 coffeescript.org 的编译器转换它时,它可以正确编译,它只是在生产环境中。有任何想法吗?

顺便说一句:我正在使用rails 4

最佳答案

这是一个 CoffeeScript 设置。

(function() {
# Code here
}).call(this)

是由coffeescript默认生成的闭包(可以禁用,但你不应该),用于 避免全局命名空间污染 .
它不会影响脚本执行,一旦加载文档,您的 jQuery 代码仍将运行。

重要提示
您可能会发现该闭包的唯一问题是您实际上很难声明全局变量。这可以通过以下方式解决:
window.yourvar = 'something'

这里还有一个关于如何禁用它的建议: How can I use option "--bare" in Rails 3.1 for CoffeeScript?

关于ruby-on-rails - Rails 和 CoffeeScript 在生产环境中编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19842922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com