Articles of 包

捆绑模块NODE.JS

ASP.NET MVC 4带来了一个惊人的工具,将多个样式表或JavaScript绑定到一个像这样的样子: bundles.Add(new StyleBundle("~/Content/themes/base/css").Include( "~/Content/themes/base/jquery.ui.core.css", "~/Content/themes/base/jquery.ui.datepicker.css", "~/Content/themes/base/jquery.ui.theme.css")); NODE.JS是否有任何模块来完成相同的任务 – 将客户端 JavaScript库合并为一个? 我见过像browserify,uglifier等工具,但这些需要手动调用控制台命令(或者我可能错过了什么?)。 与此同时,消除这个过度的步骤并且拥有可以很容易地集成到express.js应用程序中的中间件是很好的。

npm安装许多依赖项

我最近买了一个HTML模板,里面包含了很多插件,放在bower_components目录里面,还有一个package.js文件。 我想安装另一个我喜欢的软件包,但是决定使用npm来达到这个目的。 当我input: npc install pnotify 包含约900个目录的node_modules已经被创build。 那些是什么? 为什么他们随我的包一起安装? 我做了一些调查,结果发现那些是需要的,但是真的,我是否需要在生产中提供我的模板,并且有数百个不必要的软件包?

Node.js:获取已安装的npm包的(绝对)根path

任务 我正在寻找一种通用的方式来获取Node.js中安装的npm包的(绝对)根path。 问题 我知道require.resolve ,但是这会给我入口点(主模块的path),而不是包的根path。 以bootstrap-sass为例。 说它在本地安装在项目文件夹C:\dev\my-project 。 那么我在找的是C:\dev\my-project\node_modules\bootstrap-sass 。 require.resolve('bootstrap-sass')将返回C:\dev\my-project\node_modules\bootstrap-sass\assets\javascripts\bootstrap.js 。 我可以想到如何获取包的根path的几种方法: 解决scheme#1 var packageRoot = path.resolve('node_modules/bootstrap-sass'); console.log(packageRoot); 这对在本地安装在node_modules文件夹中的软件包工作正常。 但是,如果我在一个子文件夹中,我需要parsing../node_modules/bootstrap-sass ,并且嵌套更多的文件夹会变得更复杂。 另外,这对全球安装的模块不起作用。 解决scheme#2 var packageRoot = require.resolve('bootstrap-sass') .match(/^.*[\/\\]node_modules[\/\\][^\/\\]*/)[0]; console.log(packageRoot); 这将适用于安装在node_modules文件夹中的本地和全局模块。 正则expression式将匹配最后一个node_modulespath元素和下面的path元素。 但是,如果一个包的入口点被设置为另一个包(例如package.json "main": "./node_modules/sub-package" ),则这将失败。 解决scheme#3 var escapeStringRegexp = require('escape-string-regexp'); /** * Get the root path of a npm package installed in node_modules. * […]

如何在没有Typescript / TSD定义的情况下将库导入节点?

我正在尝试使用一个名为connect-session-knex的会话助手,它足够隐晦,它没有发布的打字稿定义。 所以当我尝试编译我的脚本节点项目,我得到的错误, error TS2307 Cannot find module 'connect-session-knex' 有没有办法忽略这个模块的TS? 如何在没有TSD的情况下导入? 我知道knex有一个tsd,但包装不。 我从一个普通的观点来问,如何处理没有types定义的库。 对于任何人看:编译打字稿,当它没有tsd。 缺lesstsd。 没有tsd。

如何将Git哈希写入(node's)package.json?

有没有办法使用git的HEAD哈希自动更新package.json( https://npmjs.org/doc/json.html )的版本号? 我想在项目的package.json文件里有类似version: 1.0.0+rev82e4b91cfe42cd86e9453b4987b9cc446566de6东西。 EVE之前的加号手动设置和散列更新每次我提交的东西。 这可能吗? 我找不到这个话题:/

使用npm,我怎样才能下载一个包作为一个压缩包与包中包含的所有依赖项

我想要做的就是下载具有所有依赖项的软件包,以便将它们转移到另一台没有互联网连接的计算机上,并将其安装在那里。 所以情况是: 下载包(zip / tarball /任何文件),而不安装它。 包含在该下载的文件中将是所有的依赖关系(正确的版本,它是依赖关系的依赖)。 将文件传输到其他计算机。 运行npm install到文件位置(可选-g重要)。 包与依赖关系一起安装。 快乐的露营者。 我觉得必须有一个npm命令来下载和打包(创build)这样的文件。 我试过寻找这个解决scheme无济于事。 这是我第一次使用节点,所以我很害怕我没有正确地研究它,因为缺乏node / npm lingo的知识。

在这个package.json文件中需要改变什么来使用npm 0.3.0?

试图使用一个库,但得到这个错误… npm ERR! JSON.parse Failed to parse package.json data. npm ERR! JSON.parse Note that package.json must be actual JSON, not npm ERR! JSON.parse just a JavaScript object. npm ERR! JSON.parse npm ERR! JSON.parse This changed in npm 0.3.0, and is not a bug in npm. npm ERR! JSON.parse Tell the package author to fix their […]

如何通过postinstall npm脚本自动将文件从软件包复制到本地目录?

我想在运行后自动将某个文件从npm包复制到用户的本地目录 npm install my-package 我可以通过在package.json声明"files"来安装它们。 问题是—文件没有放在本地目录中。 所以我需要运行postinstall脚本。 但是现在我不知道软件包的安装位置(可能是更高的目录树),那么我怎样才能可靠地访问这些文件并通过脚本将它们复制到本地目录? (通过本地目录我的意思是—从我运行npm install my-package 作为用户使用包。) UPDATE。 看来postinstall脚本作为npm拥有的进程运行,主目录是node_modules/my-package ,所以我仍然不知道如何访问用户的主目录以外的天真../../ 。

node.js把它的文件放在哪里?

我最近开始玩node.js,但是我迷失在一大堆不同版本的node,npm,nvm和其他软件包中。 我不知道全局安装了什么,本地安装了什么(如果是本地安装,那么包怎么知道它们可以使用哪个版本的节点?)。 我想对不同的安装选项做一些总结。 具体: 当我使用nvm , apt-get , make install或者使用其他方式时,节点安装在哪里? 在本地安装节点是个好主意吗? 为什么nvm改变我的~/.profile而不是安装在一些系统可识别的bin文件夹中? 我看到nvm可以安装不同版本的节点 – 为什么我要这样做呢? 我可以在本地安装,对吧? npm安装软件包在哪里? 我看到它检查包的aganist版本,节点升级时会发生什么情况? 在哪些情况下最好使用全局或本地安装? 我应该把我的包裹放在哪里(以及他们默认放哪里?) npm , nvm和nave什么区别? 编辑:有很多方法来安装节点在这里 ,这让我更加困惑…

使用webpack创buildnpm包

我正在创build一个npm软件包,并使用webpack的加载器,如babel,eslint等。但是,我假设最终编译版本的软件包应该只包含一个模块,没有webpackBootstrap 。 我目前的软件包,webpackconfiguration和源 。 我把它剥下来,让它“工作”。 我采取的步骤检查它是否工作: npm install npm run build npm install -g . node var test = require('test-package'); 造成这个错误: Error: Cannot find module 'test-package' at Function.Module._resolveFilename (module.js:337:15) at Function.Module._load (module.js:287:25) at Module.require (module.js:366:17) at require (module.js:385:17) at repl:1:12 at REPLServer.defaultEval (repl.js:248:27) at bound (domain.js:280:14) at REPLServer.runBound [as eval] (domain.js:293:12) at REPLServer.<anonymous> (repl.js:412:12) at […]