Railsでbootstrap
のnavbar
を使用する際に、動的にactive(class名)
を付与したli
タグを設定しています。 bootstrap/navbarのwebsite
html
1###リンクが選択されていない時 2<li class="nav-item"> 3 <a class="nav-link" href="#">Active</a> 4 </li> 5 6###リンクが選択された時に class:activeを動的に付与 7<li class="nav-item"> 8 <a class="nav-link active" href="#">Active</a> 9</li>
今書いているrailsコード
以下の通り書いていますが、何となく、余計なことをしていないか、実はもっと素敵な書き方があるんじゃないかと思い、自分のやり方で正しいのか、お分かりの方、コメント頂けますと幸甚です。
要は、class
に指定する際に、class:"nav-link #{"active" if controller.controller_name == 'accounts'}"
と書いており、動作に問題ありませんが、実はわざわざこんなことしなくてもいいとかあるのでは無いか不安になっております。
ruby
1<ul class="nav nav-pills flex-column"> 2 <li class="nav-item"> 3 <%= link_to :user_account, class:"nav-link #{"active" if controller.controller_name == 'accounts'}" do %> 4 基本情報 5 <% end %> 6 </li> 7<ul>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/26 05:32