草庐IT

global-require

全部标签

javascript - NodeJS中的 'global'对象是什么

我刚刚在NodeJS环境中看到了this关键字的奇怪行为。我用代码列出它们。我已经使用NodeJSv6.x运行此代码,并使用单个JavaScript文件。在使用如下一行代码进行测试时,无论是否使用'usestrict'语句,this都指向一个空对象{}。console.log(this)但是,当我在自执行函数中运行语句时,(function(){console.log(this);}());它正在打印一个非常大的对象。在我看来,由NodeJS环境创建的全局执行上下文对象。在使用'usestrict'语句执行上述函数时,预期它会打印undefined(function(){'usestr

javascript - 调用 require 时的 const vs let

现在作为io.jssupportsES6你终于可以使用const和let关键字了。很明显,let是var的继承者,只是多了一些超能力。但是const呢?我当然知道“常量”是什么意思,但我想知道何时使用它(关于最佳实践)。例如,如果我创建一个需要另一个模块的模块,我可以这样写:'usestrict';constutil=require('util');constfoo=function(){//Dosomethingwithutil};module.exports=foo;基本上我已经用const替换了每次出现的var。一般来说,我认为这是可以的,但如果我遵循这种模式,它会让我使用con

javascript - Express.js 查看 "globals"

我正在使用Express.js(在Node.js上),我知道您可以通过“locals”参数呈现带有自定义数据的View。(res.render("template",{locals:{foo:"bar"}});)有没有办法拥有“全局”?(即每个View都可以访问的数据)我看到了viewoptions,但这不是递归的,所以如果我在模板中使用任何局部变量,它会替换我设置的局部变量。这是我的用例:我想让它可以在每页的基础上添加CSS/JS文件,这是我主要布局的一部分。问题是,如果我没有在每次渲染时明确设置这些数组,我会得到一个未定义的错误,所以在我的模板中我总是必须做typeofcss!==

jquery - 错误 : jQuery requires a window with a document

所以在进行npmupdate之前,一切都运行良好,现在一切都不像以前那样运行了。一点背景知识:在我的代码中,我使用jquery来解析文本html。我不使用窗口,也不使用jsdom。它曾经很好地做到这一点:$=require("jquery");$(html).find("").html("Thetitle");但现在我明白了:jQuery需要一个带有文档的窗口我该如何解决这个问题? 最佳答案 这对我有用varjsdom=require('jsdom');$=require('jquery')(newjsdom.JSDOM().win

javascript - 如何在浏览器中 'require' CommonJS 模块?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭2年前。Improvethisquestion在浏览器中加载CommonJS模块作为客户端JavaScript代码的最佳方式是什么?CommonJS模块将它们的功能放在module.exports命名空间中,并且通常使用require(pathToModule)包含在服务器端脚本中。在客户端加载它们不能以相同的方式工作(需要替换require,需要考虑异步等)。我找到了模块加载器和其他解决方案:Browserify、RequireJS

node.js - "require(x)"和 "import x"的区别

我刚刚开始研究一个将与MongoDB交互的小型Node项目。但是,我似乎无法正确导入相关Node模块,即使我已通过npm正确安装它们。例如下面的代码抛出一个错误,告诉我“expresshasnodefaultexport”:importexpressfrom"express";但是,此代码有效:constexpress=require("express");所以我的问题是,import和variable/require方法的功能有什么区别?我想解决困扰我的项目导入的任何问题,因为它似乎很可能导致其他问题。 最佳答案 这个简单的图表将

javascript - NodeJs : TypeError: require(. ..) 不是函数

我试图要求一个文件,然后将它传递给一个var。我关注this创建认证系统的教程。在编写server.js文件并尝试编译后,我得到了一个BSON错误,因此我在mongoose中更改了需要发布版本的行。这是我的代码和错误:server.jsrequire('./app/routes')(app,passport);错误require('./app/routes')(app,passport);^TypeError:require(...)isnotafunctionatObject.(d:\NodeJSlearning\WorkWarV2\server.js:38:24)atModule.

node.js - NodeJS中的 'requiring'模块时const vs var之间是否存在效率差异

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭6年前。Improvethisquestion我正在阅读https://github.com/rvagg/bl的文档我注意到,在示例中,他们使用const来要求一个模块,这让我想知道:这是一个好习惯吗?我的意思是,对我来说,这看起来是个好主意。上面链接的一个直接例子是:constBufferList=require('bl')varbl=newBufferList()bl.append(newBuffer('abcd'))bl.app

javascript - 带有 require 的 Node.js ES6 类

到目前为止,我已经在node.js中创建了类和模块,方法如下:varfs=require('fs');varanimalModule=(function(){/***Constructorinitializeobject*@constructor*/varAnimal=function(name){this.name=name;};Animal.prototype.print=function(){console.log('Nameis:'+this.name);};return{Animal:Animal}}());module.exports=animalModule;现在使用ES

node.js - 如何获取我通过 *not* 我的 require 加载的模块的路径(即在某些 node_module 中)

我需要一个通过npm安装的模块。我想访问从属于该模块的.js文件(因此我可以在其中子类化一个Constructor方法)。我不能(好吧,不想)修改模块的代码,所以没有地方可以提取它的__dirname。我知道以下问题,但它是关于获取具有代码控制权的模块的路径(因此,__dirname是解决方案):InNode.jshowcanItellthepathof`this`module?~~~最好是获取模块的加载模块信息 最佳答案 如果我正确理解您的问题,您应该使用require.resolve():Usetheinternalrequir