我正在为我的一个项目使用AngularJS和Angular Strap插件。在页面上我有一张桌子。其中一列包含一些链接。
点击链接后,我弹出Angular Strap的下拉菜单(作为上下文菜单)。
此菜单包含两个项目:
点击详细信息项目开放式Angular Strap撇开(显示一些数据) - 这个工作正常。
问题是,第二项应该重定向到特定页面(使用下拉列表< href属性)。我的问题是 - 如何在这个href属性中使用角度表达式?
我的观看代码的一部分 - 带下拉列表:
<button type="button" class="btn btn-link"
ng-click="selectGroup(group)"
data-html="1"
data-animation="am-flip-x"
data-placement="bottom",
bs-dropdown="dropdown">
{{ group.name }}
</button>
来自控制器的Bs-dropdown定义下拉定义:
$scope.dropdown = [
{
text: "Details",
click: "showDetails()" // Opens up Angular Strap's aside.
},
{
text: "Board",
href: "/group/{{ $scope.group.number }}" // Not evaluated.
}
];
点击&#34; Board&#34;下拉列表的项目重定向为:&#34; 127.0.0.1:8000 /#/ group / {{group.number}}&#34;而不是(即)&#34; 127.0.0.1:8000 /#/ group / 2&#34;。
作为一种解决方法,我创建了另一种方法(即)openBoard(),如下所示:
var openBoard = function() {
var groupNumber = $scope.group.number;
window.location.href="127.0.0.1:8000/#/" + groupNumber;
}
在&#34; Board&#34;中调用此方法item的点击工作正常,但会导致其他一些问题 - 更多 - 这不是我想要的方式(语义不正确)。
最后还有一件事。每当页面加载(和控制器已初始化)时,$ scope.group中存储的值都是未定义的。每当点击组链接(来自上面提到的表格)时,我都会设置一个正确的值(显示下拉列表前的一刻)。
任何人都有任何想法如何在Angular Strap的下拉列表中使用Angular表达式(在href中)?
答案 0 :(得分:1)
由于$scope.group
成员在创建下拉列表时无法启动,因此href: "/group/{{ $scope.group.number }}"
会向href: "/group/undefined"
生成$scope.dropdown = [
{
text: "Details",
click: "showDetails()" // Opens up Angular Strap's aside.
}
];
。因此,我建议您最初使用一个值加载下拉列表,
$scope.dropdown.push({
text: "Board",
href: "/group/" + $scope.group.number
});
&安培;每当获取组值时,请指定第二个下拉选项
{{1}}
希望这项工作可以帮到你,谢谢。
答案 1 :(得分:0)
我认为您必须为此{{ $scope.group.number }}
/group/group.number