我正在使用 Moovweb/Tritium 使用 Zurb Foundation 框架使常规桌面站点具有响应性。
作为其中的一部分,我想创建辅助函数来启用 Foundation 小部件,例如Moovweb 中已有的Uranium 集成。但是某些 Foundation 组件,例如顶部栏具有复杂的布局,需要比单个函数调用中看起来合理的更多配置。
例如,启用顶栏需要类似以下结构:
# Use the foundation topbar
insert_top("nav", class: "top-bar") {
# Create the title area
insert("ul", class: "title-area") {
inject("<li class='name'><h1><a href='/'>Website Name</a></h1></li>")
inject("<li class='toggle-topbar menu-icon'><a href='#'><span>Menu</span></a></li>")
}
# Grab the header links and put them in the top bar
insert("section", class: "top-bar-section") {
insert("ul", class: "left") {
# Move the original header links here
move_here("//span[@class='pagetop']//a"){
wrap("li")
}
}
}
}
将其抽象为可重用的氚函数的正确方法是什么,以最大限度地减少样板代码但又允许灵活性?