Articles of 要求

Node.js需要caching

我真的被nodejscaching系统卡住了。 我的项目有这样的结构: Project/ apps/ jobs_processor/ app.js processors.js processors/ libs/ queue_manager.js queue_manager.js需要processors.js var processors = require("../apps/jobs_processor/processors.js"); app.js也需要processor.js var processors = require("./processors.js"); 如果我考虑到文档,我必须有相同的path可能会获得相同的对象,是吗? 如果是这样,我怎么能做到这一点(有相同的path)? 谢谢。 编辑: 如果find解决我的问题。 这是queue_manager.js文件的第一个版本 var _ = require("lodash"); var Utils = require("./utilities"); var Processors = require("../apps/jobs_processor/processors"); var Logger = require("./logger"); var QUEUES_CACHE = {}; exports.createJob = createJob; exports.getCacheObject = getCacheObject; function createJob(name, data) […]

使用Express访问Node.js中的模型

我是新来的node.js,并不完全知道如何访问我的app.js文件中的模型。 我的文件结构如下: – controllers – helpers – middlewares – models – node_modules – public – tests – views app.js package.json App.js 在我的app.js我有: var express = require('express'); var app = express(); app.set('view engine', 'jade'); app.use(express.static(__dirname + '/public')); var models = require('./models'); app.get('/', function(req, res){ res.render('index', {title: 'Mosaic Viewer'}); }); app.get('/map', function(req, res){ var blockMosaicStreamer = models.BlockMosaicStreamer(); […]

如何使用打字稿与nodeJS – “需要”的问题

我正在build立一个新的节点/打字稿项目,并且无法正常工作。 'use strict'; let fetch = require("node-fetch"); 给我error TS2304: Cannot find name 'require'. 所以我觉得打字是需要的? 尝试: typings install node typings install nodejs typings install require 所有这些给 Unable to find "XXX" ("npm") in the registry 什么是获取需求的正确方法,或者任何使用typescript的简单节点应用程序。 一旦你走了,TS是伟大的,但在初始configuration周围移动的沙子是一个相当麻烦去。 我也看了这个答案 ,但是并没有解决这个问题。 有些build议似乎不再有效。 我试图编译到ES6。 types版本1.0.5 使用tsconfig.json和typings.json我已经从一个单独的工作项目复制,并尽可能删除。 我想我必须用镊子来弄清楚什么是不同的。

Node.js:如何从模块中获取需要函数的文件名?

我试图从模块的function需要从原来的文件名。 我知道你可以使用__filename来获取当前文件,但我想获得原始文件。 例如,我有一个简单的模块 module.js module.exports(function() { return { print : function(message) { console.log(__filename + ' ' + message); }; } }); app.js var module = require('./module')(); module.print('hello'); 最后发生的是它会打印module.js hello但我真的很想看到app.js hello 。 我正在探索如何获得它,我知道你可以使用console.trace来看看堆栈的调用,但我不能parsing它来做我想要的。 现在我已经通过使print函数接受另外一个参数来处理它,并且只需从app.js传递__filename ,但是我想find一个解决scheme,我不必这样做。

Node.js:哪个模块“require('..')”使用socket.io?

在https://github.com/socketio/socket.io/blob/master/test/socket.io.js 代码: 什么是要求的模块名称?

coffeescript传递require()参数错误

代码require ('./routes') app编译require('./routes'(app)); 但我需要它来编译require('./routes)(app) 。 我怎么能这样做?

限制npm依赖项模块对require(isolation)的使用

有没有办法通过限制使用require来require一个npm模块? 例如,一个应用程序可以提供一个系统来扩展它的一些function,通过提供一个npm模块来完成一个给定的合同( 比如说它用一个方法process导出一个类 )。 该模块,如果知道require它的应用程序的源代码可能require('db').connect().flush()或类似的东西。 这个应用程序扩展可能require从它的主机的任何修改它。 npm是否允许限制/安全的方法来处理这种情况(可能通过使用进程)? 谢谢。

browserify模块加载到函数中

我有一个app.js这是我的web应用程序的主要文件。 它初始化用户界面并加载不同的模块。 目前这是一个包含所有代码的大文件。 我想重构这个function,并将其分解为独立的模块,然后将它们与browserify捆绑在一起。 App.js也依赖于jQuery和一些模块。 我已经在package.json定义了browser部分 "browser": { "jquery": "./node_modules/jquery/dist/jquery.js", "jquery-ui": "./static/js/vendor/jquery-ui-1.12.1/jquery-ui.min.js", "App": "./static/js/app.js", "myModule": "./static/js/myModule.js" } 另外我用browserify-shim来加载一些无法加载的jquery插件。 对于browserify-shim我已经定义了一个configuration部分: "browserify": { "transform": [ "browserify-shim" ] }, "browserify-shim": { "jquery": "$", "jquery-ui": { "depends": [ "jquery:$" ] }, "bootstrap": { "depends": [ "jquery:$" ] }, "dropdown": { "depends": [ "jquery:$" ] }, "App": { "exports": "App", […]

使用Visual Studio代码的JavaScript Intellisense:如何让它适用于所需的模块?

出于某种原因,intellisense将不适用于我所需的模块。 至less是开箱即用的。 例如(这是JS代码): const fs = require('fs'); input时不会触动intellisense: fs. 进一步下来的代码。 但是,如果我在项目的node_modules目录(运行$ npm install命令)中安装了“some”模块,我会在popup它之后让intellisense工作。 无论哪个模块安装(显然)。 更令人费解的是,完全删除node_modules将会使intellisense继续工作。 即使反弹VS Code也不会影响智能感知,从这一点开始,智能感应将继续工作。 它看起来像安装“一些”模块以某种方式固定任何不适合智能感知。 问题是,这个问题在哪里? 在一个文件? 还有,这是什么? PS:我在Ubuntu Mate 16.04上使用VS Code 1.7.2和Node 6.5.0。

在node.js中重新映射require()的本地path

在RequireJS中,我可以使用configuration文件重新映射path,例如: require.config({ paths: { foo: 'lib/foo/foo' } }) 我可以这样使用foo: require(['foo'], function(foo) {…}) 在node.js中,我可以类似地要求本地文件,例如: var foo = require('../lib/foo/foo.js') (在这个例子中, foo.js是我写的文件,不能通过npm获得) 是否有可能重新映射'foo'到'/lib/foo/foo.js'相对于node.js中的一些基本目录,所以我不必使用相对path?