nav_lynx, 用 Rails helper 生成所选类的导航链接

分享于 

6分钟阅读

GitHub

  繁體 雙語
Rails helper to generate navigation links with a selected class.
  • 源代码名称:nav_lynx
  • 源代码网址:http://www.github.com/vigetlabs/nav_lynx
  • nav_lynx源代码文档
  • nav_lynx源代码下载
  • Git URL:
    git://www.github.com/vigetlabs/nav_lynx.git
    Git Clone代码到本地:
    git clone http://www.github.com/vigetlabs/nav_lynx
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/vigetlabs/nav_lynx
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    NavLYNX

    Code ClimateBuild StatusCoverage StatusGem Version

    如果符合标准的Rails link_to helper,NavLYNX提供了一个 nav_link_to helper,但是在满足某些条件时将一个 selected 类添加到你。 如果链接url的目标与当前页面的url相同,则将默认类添加到链接。

    <%= nav_link_to 'My Page', my_path %>

    my_path 与当前页面url相同时,输出如下:

    <aclass="selected"href="/page">My Page</a>

    ,NavLYNX只支持 _path URL帮助器,完全 _url 不能正确地对当前链接进行 MATCH。

    与块的使用情况:

    link_to 相同的用法:

    <%= nav_link_to 'http://example.com/page'do%> <strong>My Page</strong><%end%>

    选项的用法

    <%= nav_link_to my_path, html_options, nav_lynx_options %>

    安装

    • 将这里添加到你的Gemfile:
    gem 'nav_lynx'
    • bundle install
    • 在视图中使用 nav_link_to helper。

    配置选项

    有一个配置选项 selected_class。 如果你想要一个不同的类,然后对所选导航项目进行"选定",可以使用这里选项更改。 你可以在 Rails 应用程序的config/application.rb 中设置这里 inside,如下所示:

    moduleMyApplicationclassApplication <Rails::Application#.. . config.nav_lynx.selected_class ='current'endend

    inline-选项

    : selected_class

    重写默认'选定'类作为在每个链接基础上添加到选定nav的类。

    <%= nav_link_to 'Page', my_path, {}, {:selected_class => 'customClassName'} %>

    默认值: selected

    : ignore_params

    将这里设置设为 true,如果你想在比较时忽略url中的查询字符串。 url http://example.com/http://example.com/?foo=bar 将被视为相等。

    <%= nav_link_to 'Page', my_path, {}, {:ignore_params => 'true'} %>

    默认值: false

    : url_segment

    你可以只检查url的段,而不是比较完整的url。 在路径 /news/article 中,news 为段 1,article 为段 2. 这对于类别导航尤其有用。 指定标识你想要 MATCH的url段的索引。 例如如果链接的页面url为 example.com/news/story,而你指定 :url_segment => 1,则 helper 将查找 MATCH /news/*

    <%= nav_link_to 'Page', my_path, {}, {:url_segment => 1} %>

    默认值: false

    : controller_segment

    类似 :url_segment,但比较控制器。 例如如果控制器是 members/pages,并且指定了 :controller_segment => 1,那么 helper 将把任何带有 members的页面作为控制器的第一段,作为控制器的第一部分。

    <%= nav_link_to 'Page', my_path, {}, {:controller_segment => 1} %>

    默认值: false

    : 包装器

    通常情况下,你不希望 selected 类直接在锚定标记上。 你可以用 :wrapper =>'li' ( 或者任何其他html元素) 将锚标记包装在另一个元素中。 selected 类将被添加到这里包装,而不是添加到定位点。 任何 html_options 仍将直接添加到锚点标记中。

    <%= nav_link_to 'Page', my_path, {}, {:wrapper => 'li'} %>

    默认值: false

    : wrapper_class

    如果要为包装器( 它是否被选中) 指定其他类,可以将它们添加到 :wrapper_class => 'class-name class-name-2'

    <%= nav_link_to 'Page', my_path, {}, {:wrapper_class => 'nav-item'} %>

    默认值: false

    提供 NavLYNX

    • 检查最新的主机,确保功能没有实现,或者 Bug 尚未被修复。
    • 查看问题跟踪程序以确保某人已经没有请求它并/或者贡献它。
    • fork 项目。
    • 启动特征/修正分支。
    • 提交并推送直到你对自己的贡献满意。
    • 一定要为它添加测试。 这很重要,所以我不会在以后的版本中无意中。
    • 请不要与 Rakefile,版本或者历史混淆。 如果你想有自己的版本或者是必要的,那么很好,但是请隔离它自己的提交。

    版权

    版权所有( c ) 2014 Viget。有关详细信息,请参阅 MIT_LICENSE。 生于Aug年年,在这个博客文章

    Code At Viget

    访问 code.viget.com,查看 Viget中的更多项目。


      rails  Select  Helper  link  links  
    相关文章