首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何修复Ruby on Rails中未显示任何项目的导航栏下拉菜单

如何修复Ruby on Rails中未显示任何项目的导航栏下拉菜单
EN

Stack Overflow用户
提问于 2019-09-13 10:25:46
回答 1查看 271关注 0票数 0

我刚刚开始开发一个带有导航栏的网页,导航栏的右侧有一个下拉菜单,所以当一个人必须单击触发器才能显示下拉内容时,问题是没有显示任何内容项。

我使用materialize进行前端设计,但我也尝试了bootstrap用于相同的导航栏目的,但它也没有显示项目

(app/views/layout/application.html.erb)

代码语言:javascript
代码运行次数:0
运行
复制
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>

代码语言:javascript
代码运行次数:0
运行
复制
<!-- Dropdown Structure -->

<ul id="dropdown1" class="dropdown-content">
  <li><a href="#!">My Profile</a></li>
  ... 
</ul>

<ul id="dropdown2" class="dropdown-content">
  <li><a href="#!">My Profile</a></li>
  ...
</ul>

代码语言:javascript
代码运行次数:0
运行
复制
<nav class="brown lighten-4 z-depth-z">
<div class="container">
  <div class="nav-wrapper">
    <a href="#!" class="brand-logo">Logo</a>

    <a href="#" data-target="mobile-demo" class="sidenav-trigger"><i class="material-icons"></i></a>
    <ul class="right hide-on-med-and-down">
      <li><a href="#">Courses</a></li>
      <li><a href="#">Sign Up</a></li>
      <li><a href="#">Login</a></li>
      <!-- Dropdown Trigger -->
      <li><a class="dropdown-trigger" href="#!" data-target="dropdown1">John Doe<i class="material-icons right"></i></a></li>  
    </ul>

    <ul class="sidenav" id="mobile-demo">
      <li><a href="#">Courses</a></li>
      <li><a href="#">Sign Up</a></li>
      <li><a href="#">Login</a></li>
      <!-- Dropdown Trigger -->
      <li><a class="dropdown-trigger" href="#!" data-target="dropdown2">John Doe<i class="material-icons right"></i></a></li>  
    </ul>
  </div>    
</div>

代码语言:javascript
代码运行次数:0
运行
复制
<script>
  $('.sidenav').sidenav();
  $(".dropdown-trigger").dropdown();
</script>

(app/assets/stylesheets/application.scss)

代码语言:javascript
代码运行次数:0
运行
复制
 @import "materialize";

(app/assets/javascripts/application.js)

代码语言:javascript
代码运行次数:0
运行
复制
 //= require jquery
 //= require materialize-sprockets
 //= require turbolinks
 //= require_tree .

(Gemfile)

代码语言:javascript
代码运行次数:0
运行
复制
# materialize Sass 
gem 'materialize-sass'

# Jquery 
gem 'jquery-rails'

当我点击触发器来放下物品(在这种情况下是John Doe)时,

我在控制台上看到这个错误:

代码语言:javascript
代码运行次数:0
运行
复制
       Uncaught ReferenceError: $ is not defined
at <anonymous>:2:5
at o.assignNewBody (turbolinks.js:604)
at o.replaceBody (turbolinks.js:542)
at turbolinks.js:535
at o.e.renderView (turbolinks.js:495)
at o.render (turbolinks.js:533)
at Function.e.render (turbolinks.js:493)
at t.renderSnapshot (turbolinks.js:690)
at t.render (turbolinks.js:686)
at r.render (turbolinks.js:940)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-13 10:54:33

正如jquery-railsdocs所说,如果您使用的是rails 5.1+,我相信您需要在使用jquery之前添加以下内容:

代码语言:javascript
代码运行次数:0
运行
复制
//= require rails-ujs
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57916586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档