javascript - 如何在 Rails 中安装 masonry 或其他 javascript? (不使用 gem )

标签 javascript ruby-on-rails cdn masonry

我想要Masonry对于我的 Rails 4.2 项目,最初通过 masonry-rails gem 安装它然后浪费了一个晚上,直到我意识到 gem 正在使用过时的 Masonry 版本。这将是我第一次尝试在不使用 gem 的情况下将 javascript 添加到我的 Rails 应用程序中。来自 installation docs选项包括:下载CDN包管理器 (bower/npm)

我通过简单添加

来使用CDN
<script src="https://npmcdn.com/masonry-layout@4.1/dist/masonry.pkgd.min.js"></script>

到将使用该脚本的index.html.erb View 文件的顶部。它是否正确?

使用CDN而不是下载包管理器的优点/缺点是什么,以及我是否想添加masonry。 pkgd.min.js 手动添加到我的项目中我该怎么做?

This has some good related info

最佳答案

What is the advantage/disadvantage of using CDN instead of Download

要了解 CDN 与本地脚本的优缺点,请参阅答案 herehere

How to manually add them in project

有两种方法

  1. 将它们(例如 masonry.pkgd.min.js)放在 app/assets/javascripts 下,并在 application.js 中要求它们作为 //= require masonry.pkgd .min.js 但前提是你没有这一行 //= require_tree . 因为 require_tree 会加载 app/assets/javascripts 文件夹下的所有 js 文件

  2. 或者将它们放在vendor/assets/javascripts中。但在这种情况下,您必须在 application.js 文件中要求它

added masonry script to the top of index.html.erb view file that will use the script. Is this correct?

从某种意义上说,它是正确的,它只会加载到该特定 View 。现在,如果您将相同的内容放入 application.html.erb 中或通过 Assets 加载它,那么相同的 js 脚本将加载到每个 View 上。

关于javascript - 如何在 Rails 中安装 masonry 或其他 javascript? (不使用 gem ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38815227/

相关文章:

c# - 在 ASP.NET 4.5 中为 HiddenField 设置值

javascript - Moment.js amDateFormat 总是从 1970 年返回日期

javascript - 为什么 TypeScript 将 .default 添加到全局定义的导入中?

ruby-on-rails - 如何从字符串转换为对象属性名称?

caching - 使用 Nginx 的分布式和缓存 MP4 伪流(搜索)

javascript - JAWS(在 Windows 上)不读取 `<p>` 标签上给出的 aria-label

ruby-on-rails - 给定代码的输出是什么

ruby-on-rails - Rails 3 basic Get JSON with jQuery and output on the page flow 问题

php - 如何使用 smarty 从 CDN 源包含 javascript

git - 将 GIT 和 CDN 用于静态内容