小编Hon*_*arc的帖子

尝试运行grunt时找不到模块'findup-sync'

grunt-cli安装后我无法运行.我跑

npm install -g grunt-cli
Run Code Online (Sandbox Code Playgroud)

然后运行grunt错误

    node.js:63
    throw e;
    ^
Error: Cannot find module 'findup-sync'
    at loadModule (node.js:275:15)
    at require (node.js:411:14)
    at Object.<anonymous> (/home/tmartin/bin/grunt:9:14)
    at Module._compile (node.js:462:23)
    at Module._loadScriptSync (node.js:469:10)
    at Module.loadSync (node.js:338:12)
    at Object.runMain (node.js:522:24)
    at Array.<anonymous> (node.js:756:12)
    at EventEmitter._tickCallback (node.js:55:22)
    at node.js:773:9
Run Code Online (Sandbox Code Playgroud)

这是我安装的:

tmartin@timcomp:~$ npm list -g
/home/tmartin/lib
??? grunt-cli@0.1.6
  ??? findup-sync@0.1.2
  ? ??? glob@3.1.21
  ? ? ??? graceful-fs@1.2.0
  ? ? ??? inherits@1.0.0
  ? ? ??? minimatch@0.2.11
  ? ?   ??? lru-cache@2.2.2
  ? ?   ??? sigmund@1.0.0
  ? ??? …
Run Code Online (Sandbox Code Playgroud)

node.js gruntjs

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

Grunt usemin和useminPrepare多个目标

usemin问题似乎useminuseminPrepare支持最新版本的多个目标:

在useminPrepare中支持多个目标:

usemin支持:

我尝试过使用以下配置的多个目标:

useminPrepare: {
    foo: {
        dest: 'fooDist',
        src: ['foo/index.html']
    },
    bar: {
        dest: 'barDist',
        src: ['bar/index.html']
    }
},
usemin: {
    foo: {
        options: {
            assetsDirs : ['fooDist']
        },
        html: ['fooDist/**/*.html'],
        css: ['fooDist/styles/**/*.css']
    },
    bar: {
        options: {
            assetsDirs : ['barDist']
        },
        html: ['barDist/**/*.html'],
        css: ['barDist/styles/**/*.css']
    }
},
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

运行"usemin:foo"(usemin)任务警告:不支持的模式:foo

使用--force继续.

使用grunt-usemin 2.0.2

foo/index.htmlbar/index.html成为2个单页面应用程序的主要页面.

谢谢你的帮助!

javascript node.js npm gruntjs grunt-usemin

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

Gulp构建不会自动安装依赖项?

我用gulp来构建我的javascript应用程序.我在package.json文件中声明了一些依赖项,例如:

"dependencies": {
  "flux": "^2.0.1",
  "keymirror": "~0.1.0",
  "object-assign": "^1.0.0",
  "react": "^0.13.1",
  "dropzone": "^4.0.1",
  "lodash": "^3.6.0"
}
Run Code Online (Sandbox Code Playgroud)

当我运行gulp build时,它总是提示我一些依赖项无法找到,除非我手动运行npm install lodash例如.

有没有办法让gulp npm install自动运行?

dependencies build node.js npm gulp

26
推荐指数
2
解决办法
4万
查看次数

为什么Heroku无法检测Node.js buildpack?

我GIT克隆了的Node.js应用程序(在指定的版本package.json之中4.1.2,而我的本地机器存在的6.2.2),并试图与git在Heroku上推.但它没有构建并给出了这个错误:

无法检测到set buildpack https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz

现在我将buildpack设置为heroku/nodejs并收到以下消息:

Buildpack set. Next release on lit-badlands-92088 will use heroku/nodejs.
Run git push heroku master to create a new release using this buildpack.
Run Code Online (Sandbox Code Playgroud)

现在,当我跑步时git push heroku master,我再次被告知:

remote: -----> Failed to detect set buildpack
        https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz  

remote: More info: 
https://devcenter.heroku.com/articles/buildpacks#detection-failure  

remote:  
remote:  !     Push failed  
remote: Verifying deploy...  
remote:  
remote: !       Push rejected to lit-badlands-92088.
Run Code Online (Sandbox Code Playgroud)

即使我设置了Node.js buildpack也未被检测到的可能原因是什么?

git heroku git-clone node.js buildpack

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

如何处理node.js中的代码异常?

我浏览了Express的文档,描述错误处理的部分对我来说完全不透明.

我认为app他们指的是一个实例createServer(),对吧?但我不知道如何在处理请求期间发生异常时阻止node.js炸毁应用程序进程.

我真的不需要任何花哨的东西; 只要有异常,我只想返回500的状态,加上一个空的响应.节点进程不能仅因为某处存在未捕获的异常终止.

有一个如何实现这个的简单例子吗?


var express = require('express');
var http = require('http');

var app = express.createServer();

app.get('/', function(req, res){
    console.log("debug", "calling")
    var options = {
        host: 'www.google.com',
        port: 80,
        path: "/"
    };
    http.get(options, function(response) {
       response.on("data", function(chunk) {
           console.log("data: " + chunk);
           chunk.call(); // no such method; throws here
       });
    }).on('error', function(e) {
       console.log("error connecting" + e.message);
    });
});

app.configure(function(){
    app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});

app.listen(3000);
Run Code Online (Sandbox Code Playgroud)

崩溃整个应用程序,产生追溯 …

node.js express

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

向Hubo​​t添加Post支持

我正在尝试将http-post-say.coffee脚本添加到Heroku上托管的hubot应用程序.

文档表明,一旦添加脚本,它就会创建'/hubot/say'以下列格式接受发布请求的路由.

curl -X POST http://localhost:8080/hubot/say -d message=lala -d room='#dev'
Run Code Online (Sandbox Code Playgroud)

我添加了脚本并修改了网址,但收到了以下错误: Cannot POST /hubot/say

我的下一步是添加一些依赖项.我注意到其他使用的应用程序robot.router.post有这些依赖项.

"htmlparser": "1.7.6",
"connect": "2.3.4",
"connect_router": "1.8.6",
"scoped-http-client": "0.9.7"
Run Code Online (Sandbox Code Playgroud)

我部署了我的更改,但是Cannot POST /hubot/say当我尝试按此路线时仍然会收到.

有什么我想念的吗?我对Node.js或hubot不太熟悉.

javascript heroku http-post node.js hubot

25
推荐指数
1
解决办法
1761
查看次数

是否有针对npm审核的纱线替代品?

需要固定纱线的分辨率特征,还要审核npm audit吗?有替代纱线npm audit吗?或者,交替地,将依赖的依赖关系的分辨率工作npm

security audit dependencies npm yarnpkg

25
推荐指数
6
解决办法
1万
查看次数

从函数返回结果(javascript,nodejs)

任何人都可以帮我这个代码吗?我需要从routeToRoom函数返回一个值:

var sys = require('sys');

function routeToRoom(userId, passw) {
    var roomId = 0;
    var nStore = require('nstore/lib/nstore').extend(require('nstore/lib/nstore/query')());
    var users = nStore.new('data/users.db', function() {

        users.find({
            user: userId,
            pass: passw
        }, (function(err, results) {
            if (err) {
                roomId = -1;
            } else {
                roomId = results.creationix.room;
            }
        }
        ));
    });
    return roomId;
}
sys.puts(routeToRoom("alex", "123"));
Run Code Online (Sandbox Code Playgroud)

但我总是得到:0

我猜return roomId;之前已经执行过了roomId=results.creationix.room.有人可以帮我这个代码吗?

javascript asynchronous node.js

22
推荐指数
2
解决办法
10万
查看次数

Socket.io + PhoneGap

当我尝试使用PhoneGap的Socket.IO时,我收到此错误:

(在iOS上应该支持socket.io)

Access-Control-Allow-Origin不允许使用null.

这是因为我的应用程序是通过file://协议提供的.我该怎么做才能解决这个问题?

谢谢!!

javascript node.js socket.io cordova

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

How to publish sns to a specific endpoint?

I have a issue with publishing sns to a specific endpoint.

我的代码:

var AWS = require('aws-sdk');
AWS.config.loadFromPath('/web/config.json');

var sns = new AWS.SNS();
sns.publish({
    // TopicArn:'arn:aws:sns:us-west-2:302467918846:MyTestTopik',
    TargetArn: 'arn:aws:sns:us-west-2:302467918846:MyTestTopik:613ee49c-d4dc-4354-a7e6-c1d9d8277c56',
    Message: "Success!!! ",
    Subject: "TestSNS"
}, function(err, data) {
    if (err) {
        console.log("Error sending a message " + err);
    } else {
        console.log("Sent message: " + data.MessageId);

    }
});
Run Code Online (Sandbox Code Playgroud)

当我使用时TopicArn,一切都很好.但是当我尝试向特定端点发送通知时,我会收到错误:

发送消息时出错InvalidParameter:参数无效:主题名称

我不知道它是什么样的参数,从哪里来.

amazon-web-services node.js amazon-sns

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