我想创建一个类似于 AngularJs Material 网站(https://material.angularjs.org)中的菜单
不幸的是,没有文档或演示可以做到这一点。
有任何想法吗?
谢谢
您可以使用它们的指令创建自己的侧边菜单menuToggle
和menuItem
,以及它们的menu service
,它们可以在它们的源文件中找到。我在很多项目中都使用过这个菜单,所以我知道它有效。您所要做的就是以相同的方式实现它。我写了一篇博客文章,通过这里找到:
正如@Splaktar 所说,您可以等待里程碑 0.9.0 中的官方 mdListiItem。
您还可以查看整个angular-material项目源代码并在此处查看https://github.com/angular/material#building或 README.md 以构建文档。
首先安装或更新本地项目的 npm 工具:
# First install all the NPM tools:
npm install
# Or update
npm update
然后运行 gulp 任务:
# To build `angular-material.js/.css` and `Theme` files in the `/dist` directory
gulp build
# To build the Angular Material Docs and Demos in `/dist/docs` directory
gulp docs
然后你应该在输出文件夹'dist/docs'中的'docs.js'、'css/docs.css'和'index.html'中看到你需要的代码。
'dist/docs' 中的 'docs.js' 与原始 'docs' 文件夹中的 'docs.js' 不同。当您构建包括您需要的文档在内的文档时,会生成许多代码并将它们连接在一起。
构建文档后,获取所需代码的最快方法是在“dist/docs/docs.js”中搜索“menuToggle”或“menuLink”指令或“menu”工厂。
希望这可以帮到你。
只需在此处查看答案:https ://stackoverflow.com/a/38258961/1904479 ,
http://demo.sodhanalibrary.com/angular/material-ui/accordion/accordion.html很好地实现了手风琴或可扩展列表视图。
您不需要任何这些,如果您想要相同的用户体验和外观,我想没有理由不导入服务和所有内容。但是,如果你想要的只是可折叠性,你可以使用 ng-class 指令来解决这个问题,而无需导入太多;根据您的范围设置方式,您可能需要为每个可折叠区域使用不同的变量,如下所示:
<div data-ng-click="collapsableA = !collapsableA;">Toggle Click zone</div>
<div data-ng-class="{collapsed: 'collapsableA}" class="collapsable">
Stuff that gets hidden
<div>More stuff to hide</div>
</div>
在您的控制器 $scope 声明中
$scope.collapsedA = true //if you want it to start collapsed
然后在你的CSS中像
.collapsable{
transition: all .2s ease-in-out;
min-height: 20px;
overflow: hidden;
}
.collapsable.collapsed{
height: 0;
min-height: 0;
}
您将需要等待mdListItem
以支持展开/折叠控件。这暂定为 0.9.0。
你可以看看 angularui 的手风琴。 http://angular-ui.github.io/bootstrap/