【发布时间】:2017-09-18 13:55:46
【问题描述】:
我已经通过 bower 安装了 plugin 并将其包含在 bower.json 文件中:bower install bootstrap-star-rating --save。在视图中(这是一个 Rails 项目)我有这段代码:
<%= form.text_field :rating,
id: :review_rating,
class: 'form-item large-6 cell',
placeholder: 'Rating*',
required: true %>
我的 js 由 gulp 编译成 public/layout 并存在于 application.js 中。在config/application.rb我有这段代码:
config.assets.paths << Rails.root.join('public', 'layout')
因此,layout 目录存在于资产管道中。
我用来初始化星级的代码是:
$('#review_rating').rating({
min: 1,
max: 5,
step: 1,
size: 'sm',
theme: 'krajee-uni'
});
如果插件作为依赖项存在于 bower.json 中,为什么会出现错误:Uncaught TypeError: $(...).rating is not a function?
【问题讨论】:
-
检查您的实际标记。 JQuery 必须出现在任何其他 Javascript 插件之上。即,您必须首先在标记中引用 JQuery.min.js 脚本。
标签: javascript jquery ruby-on-rails plugins bower