Angular 4 CanActivate guard不会加载与服务一起使用的组件; 简单的Observable.of(true)作品

我试图在Angular中使用CanActivate警卫,当我从它调用服务时,它不工作,并return true甚至return Observable.of(true); 但它工作和加载组件,当我不打电话任何服务,只写Observable.of(true); 在canActivate 以下是该代码的最新工作: canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> { //return Observable.of(true); return this._userService.verify().subscribe((result: Array<Object>) => { let user : UserDetail = new UserDetail(); Object.keys(user).forEach(key=>{ let listValue = result.filter(m=>m["m_type"]==key); if(listValue.length>0){ user[key] = result.filter(m=>m["m_type"]==key)[0]["m_value"]; } }); this.userDetails = user; return Observable.of(true); //return true; }, (error: any) => { // error when verify so redirect […]

用PM2运行一个自定义的npm脚本

我目前正在开发几个电报机器人,但我想保留在同一个git存储库。 问题在于另一方面,我想把它们作为单独的进程运行。 由于我使用的是Telegraf框架,所以要运行一个机器人,例如: micro-bot src/bot-one/bot.js 这个问题出现在PM2上时。 我已经能够运行npm start脚本的机器人之一,像这样: pm2 start –name "WeatherBot" npm — start — -t < TOKEN> 但我想能够创build像这样的自定义脚本: "main": "src/weatherWarnBot/bot.js", "scripts": { "start": "micro-bot", "littleAppleBot": "micro-bot src/littleAppleBot/bot.js", "weatherWarnBot": "micro-bot src/weatherWarnBot/bot.js" } 但是,PM2命令将如何运行两个自定义脚本中的每一个? 为了简化,我正在考虑将bot代币设置为系统的环境variables。

什么是更好的方法来处理EventEmitter和循环需要?

我有这样的用户服务: 'use strict'; let events = require('services/events'); module.exports = { create: function (data) { doCreate(data).then(user => { events.emit('user.create'); }); }, addBonus: function (transaction) { doSomething; } } 我有events模块: 'use strict'; let EventEmitter = require('events').EventEmitter; let pubsub = new EventEmitter(); let userService = require('services/user'); pubsub.on('user.create', function(user) { console.log('EVENT: user.create'); doSomething(); } pubsub.on('payment.success', function(transaction) { userService.addBonus(transaction); // […]

如何使用$ split运算符进行聚合

我想在date字段上使用$ split运算符。 [{ "status": true, "beaconData" :{ "date" : "15/07/2017, 11:00", "charge" : 15, }, { "status": true, "beaconData" :{ "date" : "2/07/2017, 15:00", "charge" : 35, }, { "status": true, "beaconData" :{ "date" : "2/07/2017, 11:05", "charge" : 5, }] 我曾经这样用过 db.orders.aggregate([{$ project:{data:{$ split:[“$ beaconData.date”,“,”]},'status':1}}]) 但错误返回像 “errmsg”:“exception:无效的操作符'$ split'”, “代码”:15999,

在Electron中输出用户名

我真的知道如何在Electron应用程序中输出用户名。 所以这样的事情: const os = require('os') const username = // the code or the username so that it can be displayed document.write("The username is: " + username) 那可能吗?

如何使用sinon模拟req和res参数的函数?

我想通过一些testing,使用嘲讽和存根。 controler.js: const User = require('./models/user'); module.exports.userRead = function userRead(req, res) { User .query() .then(users => { res.render('results', {data: users}); }) .catch((err) => { res.render('error'); }); user.test.js: const sinon = require('sinon'); const controller = require('../controler'); const Provider = require('../provider'); describe('Testing userRead', () => { const appStub = sinon.stub(Provider,'query'); test('should returns users', () => { controler.userRead(req, […]

时区或UTC位置的偏移量

我需要库,可以将时区转换为utc偏移量。 我有美国城市名单,我知道他们的区域(PST,EST ….)和地点。 所以我的策略可以 library.getOffset('city location') myLibraryOrOtherLibrary.getOffset( 'EST') 我知道图书馆的时刻。但是图书馆并不支持所有的美国城市,像下面这样的东西 moment().tz("America/Los_Angeles").format(); 我应该自己实现一些东西,还是有一些其他的库,或者我可以以其他方式使用moment.js?

在页面closures后向node.js发送消息

所以我很新,所以我很抱歉,如果这是一个完全错误的做法,但我目前正在使用express和socket.io使用node.js编程一个小聊天应用程序。 我设法得到一个login消息logging到控制台,但我真的很苦恼注销之一。 当用户打开页面时,我将房间名称和用户名从一个cookie中取出,并发送到服务器,如下所示: var socket = io(); var roomname = readCookie('Roomname'); var nickname = readCookie('Nickname'); var data = {'type': 'user', 'channel': roomname, 'user': nickname, 'data': "joined"}; socket.emit('chat', data); 之后,我在服务器端过滤消息,并将答案发送给所有这样的客户端: case 'user': io.emit('chat/' + msg.channel, {type: 'user', user: msg.user, data: msg.data}); break; 我总是发送string“聊天”,然后房间名称作为频道名称,这样只有右侧房间的用户才能看到该消息。 在那之后,我清理了客户端收到了什么样的消息: case 'user': console.log(msg.user + " just " + msg.data + " the […]

PhpStorm不识别node.js语法

我不能configurationPhpStorm使用NodeJs的语法,我已经按照这个指南,但由于某种原因,它不工作 – 你可以在图片中看到

Docker不会构build节点容器

我正在尝试构build一个包含Node容器的Docker镜像(您可以在这里查看代码 ) 而当我运行一个docker compose up -d ,我受到这个错误的欢迎 Building node Step 1/2 : FROM node:latest ERROR: Service 'node' failed to build: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on [::1]:53: read udp [::1]:57055->[::1]:53: read: connection refused 我使用Hyper-V运行Docker for Windows,诊断ID是EC5B82D9-E059-45C4-A909-C7A062429C98 / 2017-09-20_22-51-57如果您想检查它。 任何人都有想法?