对于局部视图,我想做一些我通常会做的JavaScript事情$(document).ready(function() {...}),例如将venet侦听器绑定到元素.我知道这对AngularJS和加载到"根"视图中的部分视图不起作用.
因此,我向监听$viewContentLoaded事件的控制器添加了一个监听器.调用侦听器的函数,因此事件被触发但在我看来好像是在呈现局部视图之前.当我在侦听器的函数中设置断点并使用firebug调试它时,我也没有看到元素,函数中的jquery选择也没有找到局部视图的元素.
这就是控制器的样子:
angular.module('docinvoiceClientAngularjsApp')
.controller('LoginController', function ($scope, $rootScope) {
$scope.$on('$viewContentLoaded', function(event) {
console.log("content loaded");
console.log($("#loginForm")); // breakpoint here
});
[...]
Run Code Online (Sandbox Code Playgroud)
我想我做错了,因为如果这是一个常见的错误,必须在stackoverflow上发布更多帖子.
当我使用ui-router和ui-view时,我会给你一个路由文件的摘录:
angular
.module('docinvoiceClientAngularjsApp', [
'ui.router',
'ngAnimate',
'ngCookies',
'ngResource',
'ngMessages',
'ngRoute',
'ngSanitize',
'ngTouch'
])
.config(function ($routeProvider, $stateProvider) {
$stateProvider
.state('login', {
url: '/',
templateUrl: 'components/login/loginView.html',
controller: 'LoginController'
})
.run(['$state', function ($state) {
$state.transitionTo('login');
}])
[...]
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏.谢谢和亲切的问候
更新1:我将错误删除到以下用例:loginView.html如下所示:
<div id="loginContainer" style="width: 300px">
<form id="loginForm" ng-submit="login(credentials)" ng-if="session.token == undefined">
[...]
Run Code Online (Sandbox Code Playgroud)
一旦我ng-if …
我有一个简单的测试用例,我将一个HornetQ服务器(V2.4.7.Final)作为Spring上下文的一部分启动.这非常有效,我可以通过JMS,HornetQ API和/或JMX访问队列.
测试用例应该在启动时清空队列,检查它是否为空,然后向队列添加10条消息.只要此队列中没有使用者,就可以使用管理队列或JMSQueueControl.甚至通过JMX对队列进行一些操作也运行良好.
只要我使用Spring配置向此队列添加消息侦听器 - 并且侦听器按预期使用消息 - 我无法从队列中删除所有消息.既不是通过JMX调用方法,也不是管理队列,也没有JMSQueueControl工作,即方法被无异常调用,但它们没有显示效果.
我想也许我必须在对其内容进行一些修改之前暂停队列,但暂停也不起作用.我可以看到队列是通过JMX暂停的,并且在使用API时报告了相同的消息,但消费者仍然消耗来自队列的消息.因此,我认为它根本没有停顿.
我知道没有源代码很难,但从我的观点来看,这是非常基本的设置,因为你在很多很多教程中都找到了它.任何人都可以建议我做错了什么.如果需要任何源代码,请发表评论,我将添加重要部分.
当使用 RXJS 时,我问自己嵌套的 concatMap 是否等同于顺序的。考虑以下示例:
observable1.pipe(
concatMap(result1 => observable2.pipe(
concatMap(result2 => observable3.pipe(
concatMap(result3 => of(result3)
)
)
).susbcribe((result) => {...});
Run Code Online (Sandbox Code Playgroud)
这将result导致result3. 为了避免嵌套,我想写成如下:
of(null).pipe(
concatMap(() => observable1),
concatMap(result1 => observable2),
concatMap(result2 => observable3),
concatMap(result3 => of(result3))
).susbcribe((result) => {...});
Run Code Online (Sandbox Code Playgroud)
这也会导致result存在result3。即使在细节级别上可能存在差异,我是否可以假设连接可观察量的两种方法都被认为是等效的(例如,关于失败)?
任何帮助表示赞赏...