小编Mic*_*ker的帖子

具有angular-ui bootstrap的响应式下拉导航栏(以正确的角度方式完成)

我使用angular-ui-boostrap的模块"ui.bootstrap.dropdownToggle"创建了一个带下拉导航栏的JSFiddle:http://jsfiddle.net/mhu23/2pmz5/

<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
    <div class="container"> <a class="brand" href="#">
                My Responsive NavBar
            </a>

        <ul class="nav">
            <li class="divider-vertical"></li>
            <li class="dropdown"> <a href="#" class="dropdown-toggle">
                        Menu 1 <b class="caret"></b>
                    </a>

                <ul class="dropdown-menu">
                    <li><a href="#/list">Entry 1</a>
                    </li>
                    <li><a href="#/list">Entry 2</a>
                    </li>
                </ul>
            </li>
          ....
        </ul>
    </div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

据我所知,这是实现这种下拉菜单的正确,有棱角的方式.就angularjs而言,"错误"的方式是包括bootstrap.js并使用"data-toggle ="dropdown"......我在这里吗?

现在我想在我的导航栏中添加响应行为,如下面的小提琴:http: //jsfiddle.net/ghtC9/6/

但是,我不喜欢上述解决方案.这家伙包括bootstrap.js!

那么将响应行为添加到现有导航栏的正确角度方式是什么?

我显然需要使用bootstraps响应式导航栏类,例如"nav-collapse collapse navbar-responsive-collapse".但我不知道怎么......

我真的很感谢你的帮助!

先感谢您!迈克尔

angularjs angular-ui angular-ui-bootstrap

76
推荐指数
3
解决办法
14万
查看次数

使用httpInterceptor和AngularJS 1.1.5实现加载微调器

我在SO上找到了一个用于http /资源调用的加载微调器的示例:

正如您所看到的,实现工作正常(使用AngularJS 1.0.5).但是,如果您将源更改为AngularJS 1.1.5.该示例不再起作用.

我了解到$httpProvider.responseInterceptors在1.1.5 中已弃用.相反应该使用$httpProvider.interceptors

不幸的是,只是在Plunker中替换上面的字符串并没有解决问题.有没有人在AngularJS 1.1.5中使用HttpInterceptor做过这样的加载微调器?

谢谢你的帮助!

迈克尔

angularjs

39
推荐指数
2
解决办法
3万
查看次数

将选择列表绑定到布尔值时的奇怪绑定/验证行为

将选择列表绑定到布尔值时,有人能解释一下以下奇怪的绑定/验证行为吗?

选择"是"(true)按预期工作.选择"否"(假)显然不会:

JSFIDDLE: http ://jsfiddle.net/mhu23/ATRQG/14/

$scope.trueFalseOptions = [{
    value: true,
    label: 'Yes'
}, {
    value: false,
    label: 'No'
}];

<select name="parameter" required ng-model="myModel" ng-options="x.value as x.label for x in trueFalseOptions"></select>
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?我希望能够从下拉列表中选择"是"或"否".选项的值应为true或false(布尔值,而不是字符串).

谢谢你的帮助!

angularjs

4
推荐指数
1
解决办法
807
查看次数

Keycloak 服务器重启后 Keycloak 访问令牌无效

我们在单页应用程序中使用 Keycloak 3.4.0 / Keycloak.js。Keycloak 将其数据存储在 MariaDB 中。

当我重新启动 Keycloak 服务器(不是 MariaDB)并刷新我的单页应用程序时,我被重定向到登录页面。我认为 Keycloak 将所有令牌存储在其数据库中,这些令牌在重新启动后不应该仍然有效吗?或者预计所有会话都会被注销?

我是否必须使用离线令牌来支持这种情况?

即使用户注销或服务器重新启动后,脱机令牌仍然有效。 https://www.keycloak.org/docs/3.4/server_admin/index.html#_offline-access

keycloak

4
推荐指数
1
解决办法
3757
查看次数

大型 AngularJS 应用程序的页面加载性能问题

我们正在开发一个相当大的 AngularJS 应用程序。目前我们正在调查一些页面加载性能问题。我们的页面准备就绪需要相当长的时间。

原因之一(以及其他常见的嫌疑人,例如观察者过多)可能如下:

我们使用 ngTemplates 来预加载所有指令模板。由于我们有如此多的指令(​​大约 100 个,我们喜欢声明式编程;-),ngTemplate JS 文件大约 170KB,因此在页面加载时需要大约 2 秒的时间来处理和解析(请参阅随附的火焰图)。

如果我们禁用 ngTemplates,感知的页面速度会好得多,因为 Angular 有“更小的”位来处理和显示。

但我认为在生产中执行这 100 个 XHR 调用来加载指令模板是非常糟糕的做法。烦人的是,Angular 甚至加载/解析实际上并未使用 ngIf 渲染的指令模板(AngularJS:无论 ng-if 条件如何加载指令模板)。

我附上了页面加载的 Chrome 时间线/火焰图的屏幕截图。您会注意到火焰图顶部有一个大的黄色条。如果我们不使用 ngTemplates,这个栏将被分成更小的部分(这似乎会导致更好的“感知页面速度”)。

Chrome 时间线/火焰图

你们中有人有类似的问题吗?或者对我们如何改进页面加载有任何意见?

我们感谢任何意见!

迈克尔

javascript performance angularjs angularjs-directive angularjs-ng-template

3
推荐指数
1
解决办法
6800
查看次数

ngxs 状态运算符插入或替换数组中的项目(upsert)

我正在尝试用现有的 ngxs 状态运算符替换或插入数组项(upsert)。我目前正在使用以下 iif 语句。有没有更简单的方法来做到这一点?

setState(
  patch({
    contractList: iif<Contract[]>(
      contractList=>
        contractList.some(
          contract =>
            contract.id === contractId
        ),
      updateItem<Contract>(
        contract =>
          contract.id === contractId,
        patch(loadedContract)
      ),
      insertItem<Contract>(loadedContract)
    )
  })
)
Run Code Online (Sandbox Code Playgroud)

ngxs

3
推荐指数
1
解决办法
5072
查看次数

处理大型数据集时无法在 mat-paginator 中设置初始 pageIndex

从这篇文章中我了解到,为了处理大型数据集,您应该在 ngAfterViewInit 中的 dataSource.data之前设置 dataSource.paginator。

但是,在执行此操作时,我无法使用 this.paginator.pageIndex 设置初始 pageIndex。

https://stackblitz.com/edit/angular-mat-table-v2

当我在 ngOnInit 中加载数据并在 ngAfterViewInit 中加载分页器时,我可以设置初始 pageIndex:

https://stackblitz.com/edit/angular-mat-table-v1

angular-material angular angular-material-table

2
推荐指数
1
解决办法
1585
查看次数