ImmutableJS:在一个数组数组里面创build一个对象

我有一个有点复杂的状态如下: array: array: object, object, etc… array: etc… 简单地说,一个包含许多数组的对象的数组。 我试图根据它的Id在这个混乱中find这些对象中的一个,并更新它(即设置一个完成的值为true),但迄今还没有能够。 使用Mudash,我设法find这个对象,但我不知道如何再次传递它返回它,我的代码如下: return state.update('data', (arr) => { _.forEach(arr, function(item) { _.forEach(item, function(elt) { if(elt.Id == action.Id) { console.log('Item Found'); elt.set('completed', true); } }); }); return arr; }); 有一些简单的方法来完成这个? 谢谢。

使用Bunyan和Logentrieslogin打字稿

我想在我的离子应用程序中使用logentries.com设置远程日志logging。 这是从我的package.json摘录: "dependencies": { "bunyan": "^1.8.5", "bunyan-logentries": "^1.2.0", }, "devDependencies": { "@types/bunyan": "0.0.35", "@types/bunyan-logentries": "0.1.30", "typescript": "2.0.9" }, 码 import {createStream} from "bunyan-logentries"; import * as Logger from "bunyan"; // … constructor() { let token = 'xxxxxxxxxxxxxxxxx'; let log = Logger.createLogger({ name: '', streams: [{ level: 'info', stream: createStream({token: token}), type: 'raw' }] }); log.info("Created […]

VSCode的launch.json中的args和runtimeArgs有什么区别?

runtimeArgs中的args和runtimeArgs什么区别? // Optional arguments passed to the runtime executable "runtimeArgs": [] // Command line arguments passed to the program "args": [] 程序与运行时可执行文件不一样吗? 问题背后的额外信息和动机: 我正在开发一个nodejs应用程序。 在我的package.json ,我有一个start脚本: "start": "electron ./src/Main/main.js arg2" ,并在我的应用程序代码,我访问process.argv[2]这让我arg2 ,所以当我运行npm start ,我的应用程序按预期工作。 当我从VSCode运行应用程序,但是它没有,原因是我没有提供launch.json任何额外的参数。 我应该把这些论点放在哪里? process.argv似乎包含args或runtimeArgs提供的args ,虽然它也粘在一些–debug-brk参数中,我不想要。 我希望能够从命令行( npm start )运行应用程序或从VSCode npm start应用程序时始终如一地使用process.argv 。

针对where条件问题的子查询

我不知道如何更好地说出这个名字或者说这个词,这会导致我的search被扭曲。 我有这个声明,这是有效的。 SELECT username , ip FROM database.users WHERE ip = (SELECT ip FROM database.users_chat_history WHERE username = ? limit 1); 但是,我需要这样的东西,这是不允许的: SELECT username , ip FROM database.users WHERE ip = (SELECT ip , posted_at FROM database.users_chat_history WHERE username = ? group by posted_at desc limit 1); 错误:ER_OPERAND_COLUMNS:操作数应该包含1列(s) 原因是我需要它来抓取最新的/最近的一排进行search时,与第一个,这不是这样做,这是造成问题。 第二个查询,我只需要该语句的ip工作,但我需要它通过posted_at降序分组,因此它抓住最新的职位。 编辑:内部查询的数据库示例:

使用蓝鸟承诺,如何解决与延期的反模式?

我正在学习蓝鸟承诺,我正试图学习不再使用任何延期()。 下面的代码正确运行100%并按预期运行。 但是,这里是对我重构代码的练习,以便正确使用Bluebird承诺,而不是使用Deferred解决scheme。 我试图学会以不同的方式(正确地)对Promise进行思考,但经过多次尝试,我仍然无法find如何在没有 Deferreds的帮助下解决这个特定问题的方法。 有没有人有一个想法? 这里是如何运行它: 1)在你的控制台运行这个程序。 它将启动将使用端口8080的websocket服务器。 2)然后在另一个控制台窗口中再次运行它。 那个将启动并使用端口8081 3端口8080失败后使用端口8081。 // Initialization stuff const WebSocket = require('ws'); var wsServer; // Main Program // ================================================================= tryCreateWebsocket().then( function(){ console.log("Websocket succesfully initialized."); }, function(){ console.log("Websocket startup has failed!"); } ); // ================================================================= // Helper function: Creating a websocket, with a port as parameter function createWebsocket(port){ return […]

MongoDB通过nodeJS中的索引来更新文档的数组元素

如何在Meteor或nodeJS中增加一个MongoDB文档数组的特定元素的值? 说,我有以下文件: { "_id" : "4tP6ewe4Z5kwYA3Je", "name" : "chutia", "address" : "shonir akhra", "itemCount" : "4", "items" : [ "3", "4", "13", "24" ] } 我需要增加items数组的第n个元素。 其中n是一个variables。

Express Static中间件自动提供index.html

我不是很熟悉NodeJS,并开始使用它和Express。 现在我得到以下内容:我想提供一个index.html文件,但在此之前做一些其他的事情。 但是因为我使用的是app.use(express.static(__dirname + '/client/public')); 浏览器请求不会影响app.get("/")函数。 我如何解决这个问题? app.use(express.static(__dirname + '/client/src/css')); app.use(express.static(__dirname + '/client/public')); app.get('/', function (req, res) { console.log('###GET REQUEST received'); console.log(req); res.sendFile(__dirname + '/index.html'); }); 先谢谢你!

使用Shippo的节点发货API不起作用

我正在build立一个API,今天我把我的HTML表单集成到一起。 但是,它只是说'不能发布/新船'。 哪里不对? 我的server.js: var express = require('express') var app = express() var http = require('http'); //Shippo shipping wrapper var Raven = require('raven'); var shippo = require('shippo')('shippo_test_key'); const bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({extended: true})); app.use(bodyParser.json()); //Test app.get('/', function (req, res) { res.send('Hello World! ' + 'hey') }) app.post('/newship/', function (req, res) { var addressFrom = { […]

如何获得连接闪光灯以返回多条消息或带有换行符的单条消息?

我正在使用nodejs构build一个应用程序。 我创build了一个表单,并且正在处理用户input的后端validation。 基本上,我有一个变种,“消息”,每当我遇到一个input错误,我将错误追加到消息。 var messages =""; errors.forEach(function(msgObject) { console.log(msgObject.message); messages += msgObject.message + "\r\n"; }) (我也使用了指示 – http://indicative.adonisjs.com/ – 错误validation,它返回一个数组错误) 我正在使用connect-flash将错误返回给用户 req.flash("error", messages); 我正在使用connect-flash https://www.npmjs.com/package/connect-flash 我的问题是,连接闪光忽略换行符。 即,我得到像这样的东西: 我希望每个错误消息在一个单独的行。 我似乎无法find一种方法来实现这一点。 有任何想法吗? 这是一个更简单的问题:为什么req.flash(“errors”,“hello \ n goodbye”)返回 hello goodbye 代替 hello goodbye

当我尝试使用工作URL连接到相同的数据库时,Mongoose从不返回其承诺

我有一个本地托pipe的mongodb,我可以使用mongodb.MongoClient连接到。 工作代码: var mongoClient = require("mongodb").MongoClient; … var startApp = function(db) { // Get our collections in an easy to use format var database = { chats: db.collection('chats'), messages: db.collection('messages') }; // Configure our routes require('./app/routes')(app, database); // START APP // Start app on port app.listen(port); // Tell user the app is running console.log("App running […]