Rails 5: Sprockets::FileNotFound - 找不到类型为 'application/javascript' 的文件 'jquery-ui/autocomplete'
Rails 5: Sprockets::FileNotFound - couldn't find file 'jquery-ui/autocomplete' with type 'application/javascript'
我刚刚将 Rails 应用程序从 4.2.5
升级到 5.0.1
rails 服务器启动正常,但当我尝试加载页面时出现错误:
Sprockets::FileNotFound - couldn't find file 'jquery-ui/autocomplete' with type 'application/javascript'
当我运行bundle
我能看到
Using jquery-rails 4.2.2
Using jquery-ui-rails 6.0.1
似乎文件路径已更改。根据 gem readme:
Warning:
Due to directory structure changes between jQuery UI 1.10, 1.11, and 1.12, if you use version is lower than 6.0, you will have to use a different naming for the files to require, please check following links for more information: for 5.0 users, for 4.2 users.
更改 application.js
中的行
来自
//= require jquery-ui/autocomplete
至
//= require jquery-ui/widgets/autocomplete
我的情况非常奇怪。当我在 Ubuntu 20 中设置旧的遗留应用程序时,它工作正常,直到我重新启动笔记本电脑。之后它显示了问题中的错误。我检查了我是否使用正确的 ruby 版本的正确 RVM gemset,gems 被捆绑在一起。
当我改变
//= require jquery-ui/autocomplete
至
//= require jquery-ui/widgets/autocomplete
这条线路通过并运行良好,但接下来的线路开始出现问题。
最终我不得不更改以下所有行:
//= require jquery-ui/widgets/autocomplete
//= require jquery-ui/widgets/datepicker
//= require jquery-ui/widgets/droppable
除此之外:
//= require jquery-ui/effect
而且我不知道为什么这一行有效而其他行无效:/
我刚刚将 Rails 应用程序从 4.2.5
升级到 5.0.1
rails 服务器启动正常,但当我尝试加载页面时出现错误:
Sprockets::FileNotFound - couldn't find file 'jquery-ui/autocomplete' with type 'application/javascript'
当我运行bundle
我能看到
Using jquery-rails 4.2.2
Using jquery-ui-rails 6.0.1
似乎文件路径已更改。根据 gem readme:
Warning:
Due to directory structure changes between jQuery UI 1.10, 1.11, and 1.12, if you use version is lower than 6.0, you will have to use a different naming for the files to require, please check following links for more information: for 5.0 users, for 4.2 users.
更改 application.js
中的行来自
//= require jquery-ui/autocomplete
至
//= require jquery-ui/widgets/autocomplete
我的情况非常奇怪。当我在 Ubuntu 20 中设置旧的遗留应用程序时,它工作正常,直到我重新启动笔记本电脑。之后它显示了问题中的错误。我检查了我是否使用正确的 ruby 版本的正确 RVM gemset,gems 被捆绑在一起。
当我改变
//= require jquery-ui/autocomplete
至
//= require jquery-ui/widgets/autocomplete
这条线路通过并运行良好,但接下来的线路开始出现问题。
最终我不得不更改以下所有行:
//= require jquery-ui/widgets/autocomplete
//= require jquery-ui/widgets/datepicker
//= require jquery-ui/widgets/droppable
除此之外:
//= require jquery-ui/effect
而且我不知道为什么这一行有效而其他行无效:/