这是我尝试为node.js安装express时得到的
npm install express
module.js:340
throw err;
^
Error: Cannot find module 'graceful-fs'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/usr/share/npm/lib/utils/ini.js:32:10)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
Run Code Online (Sandbox Code Playgroud)
我甚至尝试了其他人,但仍然遇到了同样的错误.我做了一些挖掘,我确实在我的服务器上找到了'gracefui-fs'.
我在亚马逊ec2服务器上运行ubuntu 12.04 LTS.安装的节点没有错误,npm仍然无法正常工作.我也没有安装并重新安装npm使用
apt-get
Run Code Online (Sandbox Code Playgroud)
以及来源.在安装过程中,我也没有收到错误.
我正在尝试使用JADE迭代JSON文档.
我的服务器(运行node.js + express)在.get()请求上执行以下操作,
app.get('/search/', function(req,res){
// Parse the query
var dbQuery = url.parse(req.url, true).query;
var product = dbQuery.product;
var category = dbQuery.category;
console.log('Searching for: ' + product + ' in ' + category);
//Mongo DB setup then query
var result;
var server = new mongodb.Server('23.23.129.158', 27017, {});
new mongodb.Db('militaryListDB', server, {}).open(function(err, client){
if(err) throw err;
var collection = new mongodb.Collection(client, 'products');
collection.find({}).toArray(function(err, results){
console.log(results);
console.log(JSON.stringify(results));
res.render('results', {result: JSON.stringify(results), title: 'Test'});
});
});
});
Run Code Online (Sandbox Code Playgroud)
这就是它向客户呈现的内容.
[{"_id":"50738ebbe3d87c6beaddb6f2","name":"tv","category":"tech","cost":"30"}]
Run Code Online (Sandbox Code Playgroud)
我已经阅读了用于迭代数组的jade文档,我认为它对于JSON来说是相同的,但它不起作用.它只是显示一个空白区域.当我试试这个,
extends layout
block …Run Code Online (Sandbox Code Playgroud) 我使用以下代码使用openCV + python访问我的网络摄像头...
import cv
cv.NamedWindow('webcam_feed', cv.CV_WINDOW_AUTOSIZE)
cam = cv.CaptureFromCAM(-1)
Run Code Online (Sandbox Code Playgroud)
然后我在控制台中收到以下错误...
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
Run Code Online (Sandbox Code Playgroud)
我原来是用的,
cv.CaptureFromCAM(0)
Run Code Online (Sandbox Code Playgroud)
访问相同并具有相同的问题并使用-1,因为它假设选择任何网络摄像头.
我还测试了看Ubuntu是否识别网络摄像头,它确实如此.我正在使用v4l2进行网络摄像头.
{编辑}
我使用以下代码来显示视频输入,它似乎只显示网络摄像头捕获的一个图像而不是连续的视频输入...
import cv
cv.NamedWindow('webcam_feed', cv.CV_WINDOW_AUTOSIZE)
cam = cv.CaptureFromCAM(-1)
feed = cv.QueryFrame(cam)
cv.ShowImage("webcam_feed", feed)
cv.WaitKey(-1)
Run Code Online (Sandbox Code Playgroud) 我试图从数组中获取对象.例如;
var array = [{foo:'bar', baz: 'quz'}];
Run Code Online (Sandbox Code Playgroud)
我可以按如下方式访问对象
array[0].foo
// Which would return 'bar'
Run Code Online (Sandbox Code Playgroud)
但我希望能够遍历并打印所有对象.反正有没有这样做?是否有类似于'*'之类的通配符来抓住所有东西?