1

bootstrap3으로 스타일이 지정된 제 레일 앱에서 기존 ERB 대신 Slim으로 전환하기로 결정했습니다. erb 뷰 파일을 슬림형으로 변환하는 동안 navbar 링크의 스타일이 사라진 것을 알았습니다. 죄송합니다 (여기부트 스트랩 navbar 링크 감지가 슬림으로 실패했습니다

enter image description here

여기 출력의 결과 모두 정상 & 반응 모드의

# app/views/layouts/_navbar.html.erb 
<nav class="navbar navbar-default" role="navigation"> 
    <div class="container"> 
    <div class="navbar-header navbar-left"> 
     <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-navbar-collapse"> 
     <span class="sr-only">Toggle navigation</span> 
     <span class="icon-bar"></span> 
     <span class="icon-bar"></span> 
     <span class="icon-bar"></span> 
     </button> 
     <a class="navbar-brand" href="/">Foody</a> 
    </div> 
    <div class="collapse navbar-collapse navbar-right" id="bs-navbar-collapse"> 
     <ul class="nav navbar-nav"> 
     <% if user_signed_in? %> 
      <li><%= link_to current_user.email, edit_user_registration_path %></li> 
     <li><%= link_to 'New Recipe', new_recipe_path %></li> 
      <li><%= link_to 'Sign Out', destroy_user_session_path, method: :delete, confirm: "Are you sure?" %></li> 
     <% else %> 
      <li><%= link_to 'Sign In', new_user_session_path %></li> 
      <li><%= link_to 'Sign Up', new_user_registration_path %></li> 
     <% end %> 
     </ul> 
    </div> 
    <span class="clearfix"></span> 
    </div> 
</nav> 

: 여기

# app/views/layouts/_navbar.html.slim 
nav.navbar.navbar-default 
    .container 
    .navbar-header.navbar-left 
     button(type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-navbar-collapse") 
     span.sr-only Toggle navigation 
     span.icon-bar 
     span.icon-bar 
     span.icon-bar 
     a.navbar-brand href="/" Foody 

    .collapse.navbar-collapse.navbar-right#bs-navbar-collapse 
     ul.nav.navbar-nav 
     - if user_signed_in? 
      li = link_to current_user.email, edit_user_registration_path 
      li = link_to 'New Recipe', new_recipe_path 
      li = link_to 'Sign Out', destroy_user_session_path, method: :delete, confirm: "Are you sure?" 
     - else 
      li = link_to 'Sign In', new_user_session_path 
      li = link_to 'Sign Up', new_user_registration_path 

     span.clearfix 

내가 변환 한 원본 파일입니다 복합체를 위해)

<div class="collapse navbar-collapse navbar-right" id="bs-navbar-collapse"> 
<ul class="nav navbar-nav"></ul><li><a href="https://stackoverflow.com/users/sign_in">Sign In</a></li> 
<li><a href="https://stackoverflow.com/users/sign_up">Sign Up</a></li><span class="clearfix"></span> 

어디에서 잘못 했습니까?

+0

문제가 발생한 곳의 앞뒤에 생성 된 html을 공유 할 수 있습니까? –

+0

@GraemeMcLean 질문이 업데이트되었습니다. – ekremkaraca

+0

감사합니다. ERB 또는 Slim에서 제공 한 것입니까? 우리는 두 가지를 모두보고해야하며 차이점이 무엇인지 표시해야합니다. –

답변

1

들여 쓰기 실패 bagan ul.nav.navbar-nav 이후에 문제가 발생했습니다. Slim에 대한 더 많은 연습이 필요합니다. Graeme에게 감사드립니다!

nav.navbar.navbar-default 
    div.container 
    div.navbar-header.navbar-left 
     button(type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-navbar-collapse") 
     span.sr-only Toggle navigation 
     span.icon-bar 
     span.icon-bar 
     span.icon-bar 
     a.navbar-brand href="/" Foody 
    div.collapse.navbar-collapse.navbar-right#bs-navbar-collapse 
     ul.nav.navbar-nav 
     - if user_signed_in? 
      li = link_to current_user.email, edit_user_registration_path 
      li = link_to 'New Recipe', new_recipe_path 
      li = link_to 'Sign Out', destroy_user_session_path, method: :delete, confirm: "Are you sure?" 
     - else 
      li = link_to 'Sign In', new_user_session_path 
      li = link_to 'Sign Up', new_user_registration_path 
    span.clearfix