【问题标题】:How to use importmap to pin npm, yarn packages in Rails7?如何使用 importmap 在 Rails7 中固定 npm、纱线包?
【发布时间】:2022-08-08 10:07:39
【问题描述】:

我很高兴使用 Rails7,尤其是我们终于摆脱了 webpacker。 但是,今天当我尝试尝试 Rails7 时,我不再知道如何捆绑 javascript 脚本了……而且那里没有教程,或者我只是找不到它。

例如,我想导入 jquery,所以我跑了

yarn add jquery

然后我写道:

// application.js
//importmap-rails
import \"@hotwired/turbo-rails\"
import \"controllers\"
import jquery from \'jquery\'

但它没有工作, 然后我阅读了importmap-rails 上的自述文件,然后我跑了

./bin/importmap pin jquery

然后它在config/importmap.rb 中添加了一行

pin \"jquery\", to: \"https://ga.jspm.io/npm:jquery@3.6.0/dist/jquery.js\"

它奏效了,然而,这并不是我所期望的。我希望 jquery 来自节点模块/而不是 CDN

我怎样才能做到这一点?导入我从 yarn/npm 安装的 npm 包? 或者只是指出我在哪里可以找到有关如何在 Rails7 中使用 javascript 的文档?

    标签: ruby-on-rails-7 import-maps


    【解决方案1】:

    我相信您可以手动更新您的config/importmap.rb 文件以读取

    pin "jquery", to: "./node_modules/jquery"
    

    话虽如此,我相信使用 importmaps 做出的设计决策可能不包括 npm 或 yarn。我相信 importmaps 代表了一种在 webpacker/yarn/npm 之外处理 javascript 的替代方法。

    【讨论】:

    • 感谢您的答复!虽然它不起作用,但我很感激您指出 importmap 和 npm 有不同的想法来管理 js 包。
    【解决方案2】:
    ./bin/importmap pin jquery --download
    

    将下载它。

    Working with JavaScript in Rails (关于处理 JS,但关于 importmap 的信息很少)

    importmap-rails 在 GitHub 上(有关 importmap 的更多信息)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-03
      • 2017-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 2018-10-23
      • 2022-11-19
      相关资源
      最近更新 更多