无法使 JS 插件与 Rails 5.1 和 Yarn 一起使用

Can't make JS plugins work with Rails 5.1 and Yarn

我正在尝试安装 fullpage.js plugin in a Rails 5.1 app following this guide's 建议但没有成功。我遵循的步骤是:

  1. 在命令行输入yarn add fullpage.js
  2. 检查插件是否在 package.json 中列出(插件确实在依赖项下作为 "fullpage.js": "^2.9.4" 列出)
  3. 使用 //= require fullpage
  4. app/assets/javascripts/application.js 的 JS 清单中声明插件

不幸的是,我在加载网页时遇到异常 (

couldn't find file 'fullpage' with type 'application/javascript'

)

我试过使用 //= require fullpage/fullpage//= require fullpage.js(这是最后一个,因为我注意到 package.json 中没有列出其他依赖项及其 JS 扩展名。 None 这些变化已经奏效。

你能帮我理解我做错了什么吗?

我找到问题所在了。

这只是我在清单中引用资产文件的方式。要正确执行此操作,我必须进入 node_modules 文件夹(在根目录中)找到安装 fullpage.js 的文件夹,并检查 js 和 css 文件在哪个文件夹中的确切位置位于。 在这种情况下,它们恰好位于 node_modules/fullpage.js/dist/,所以我必须在清单中引用它们,如下所示:

#the js file
//= require fullpage.js/dist/jquery.fullpage

#the css file
*= require fullpage.js/dist/jquery.fullpage

请注意,我引用的文件的名称是 "jquery.fullpage.js" 和 "jquery.fullpage.css",因此我只是像往常一样将扩展名去掉。