缩短角度显示变量
Shortening Angular display variables
我使用Bootstrap的breadcrumb和Angular来输出变量,如:
<ol class="breadcrumb">
<li ng-repeat="breadcrumb in box.breadcrumbs"><a href="#">{{ breadcrumb.folder }}</a></li>
</ol>
假设我有一个输出:
a / b / c / d / e / f / g
但这最终超出了我的页面宽度。是否有一种简单的方法(或内置)将输出设置为:
a / b / ... / f / g
我不认为有内置的方法,但编写一个自定义过滤器很容易,可以随心所欲,并且可以在任何地方重复使用
像这样的东西:
angular.module('myFilters', []).filter('breadcrumbs', function() {
return function(breadcrumbsArray) {
if (breadcrumbsArray.length > 5) {
// return a new array with your desired structure
return [].concat(
breadcrumbsArray.slice(0, 2), // first two elements
{
// this would be the '...' element, so you have to put the other info you need
folder: '...'
},
breadcrumbsArray.slice(-2) // last two elements
);
}
return breadcrumbsArray;
};
});
并像一样使用
<li ng-repeat="breadcrumb in box.breadcrumbs | breadcrumbs">
如果用户点击"…",我不知道你打算怎么做,但是如果你想停用过滤器,你可以把一个布尔值传递给过滤函数
编辑你可以在这里看到它的工作
如果只是a / b / c / d / e ...
,您可以使用文本溢出:省略号(不要忘记溢出:用它隐藏)。
否则,我会在两个div
上将阵列一分为二,另一个div
和...
位于两者之间。
或者,我会将数组一分为二,并将每个数组中面包屑的数量限制为最大值。然而,这不会根据屏幕大小进行调整。
相关文章:
- 单击“JavaScript显示变量”
- Cartodb信息窗口未在地图上显示变量
- 如何更新和显示变量
- 如果项目不匹配,则显示变量
- 在 HTML 中显示变量的好做法是什么?
- 在 Javascript 中,值不来,而是显示变量名称
- 缩短角度显示变量
- 如何使用Tinybox显示变量
- 在不同条件下显示变量的不同值
- console.log() 在变量值实际更改之前显示变量的更改值
- 引导程序引导盒在消息中显示变量
- 仅显示变量内的一段文本
- 我想使用 innerHTML 显示变量的值,但我的代码不起作用
- 使用带有按钮的JS函数来显示变量
- 无法使用车把正确在我的“模板”中显示变量.js
- 选中选择框选项时显示变量
- 如何使用显示变量url的iframe打开引导模式
- 我想显示变量'b[i]'而不是'x[i].childNodes[0].nodeValue'
- 数字框jeasyui没有显示变量中的值
- 如何在AngularJS网站中显示变量的名称