【问题标题】:I get `this.getOptions is not a function` error when using coffee-loader on Rails 6.1在 Rails 6.1 上使用 coffee-loader 时出现“this.getOptions is not a function”错误
【发布时间】:2021-06-08 23:28:54
【问题描述】:

我使用 Ruby 2.7.2 和 Ruby on Rails 6.1.3 创建了一个全新的 Rails 应用程序:

rails new rails6

然后我使用 Rails 命令安装了 CoffeeScript 编译器:

rails webpacker:install:coffee

但是当我启动 webpack-dev-server 时,他却无法正确编译:

                                      Asset       Size        Chunks                         Chunk Names
     js/application-30c16ea0138c526e20f5.js    515 KiB   application  [emitted] [immutable]  application
 js/application-30c16ea0138c526e20f5.js.map    579 KiB   application  [emitted] [dev]        application
    js/hello_coffee-5eba0c58c2666f949e88.js    395 KiB  hello_coffee  [emitted] [immutable]  hello_coffee
js/hello_coffee-5eba0c58c2666f949e88.js.map    444 KiB  hello_coffee  [emitted] [dev]        hello_coffee
                              manifest.json  710 bytes                [emitted]

ERROR in ./app/javascript/packs/hello_coffee.coffee
Module build failed (from ./node_modules/coffee-loader/dist/cjs.js):
TypeError: this.getOptions is not a function
    at Object.loader (/Users/iwan/dev/rails/rails6/node_modules/coffee-loader/dist/index.js:21:24)
ℹ 「wdm」: Failed to compile.

如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails ruby webpack coffeescript webpacker


    【解决方案1】:

    我发现将 coffee-loader 降级到 1.0.1 版本可以消除错误。

    编辑 package.json 并更改版本

    "coffee-loader": "^2.0.0",
    

    "coffee-loader": "1.0.1",
    

    然后运行 ​​yarn install --check-files 以应用更改。

    快乐的日子!

    【讨论】:

    • 谢谢伊万!这对我有用! Ruby 2.7.2、Rails 6.1.2(.1)
    猜你喜欢
    • 2021-11-10
    • 2019-07-20
    • 2015-11-01
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 2022-11-05
    相关资源
    最近更新 更多