mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
114 lines
6.7 KiB
114 lines
6.7 KiB
<!doctype html>
|
|
<html>
|
|
<title>npm</title>
|
|
<meta http-equiv="content-type" value="text/html;utf-8">
|
|
<link rel="stylesheet" type="text/css" href="../../static/style.css">
|
|
<link rel="canonical" href="https://www.npmjs.org/doc/api/npm.html">
|
|
<script async=true src="../../static/toc.js"></script>
|
|
|
|
<body>
|
|
<div id="wrapper">
|
|
|
|
<h1><a href="../api/npm.html">npm</a></h1> <p>node package manager</p>
|
|
<h2 id="synopsis">SYNOPSIS</h2>
|
|
<pre><code>var npm = require("npm")
|
|
npm.load([configObject, ]function (er, npm) {
|
|
// use the npm object, now that it's loaded.
|
|
|
|
npm.config.set(key, val)
|
|
val = npm.config.get(key)
|
|
|
|
console.log("prefix = %s", npm.prefix)
|
|
|
|
npm.commands.install(["package"], cb)
|
|
})
|
|
</code></pre><h2 id="version">VERSION</h2>
|
|
<p>2.0.0</p>
|
|
<h2 id="description">DESCRIPTION</h2>
|
|
<p>This is the API documentation for npm.
|
|
To find documentation of the command line
|
|
client, see <code><a href="../cli/npm.html">npm(1)</a></code>.</p>
|
|
<p>Prior to using npm's commands, <code>npm.load()</code> must be called.
|
|
If you provide <code>configObject</code> as an object hash of top-level
|
|
configs, they override the values stored in the various config
|
|
locations. In the npm command line client, this set of configs
|
|
is parsed from the command line options. Additional configuration
|
|
params are loaded from two configuration files. See <code><a href="../cli/npm-config.html">npm-config(1)</a></code>,
|
|
<code><a href="../misc/npm-config.html">npm-config(7)</a></code>, and <code><a href="../files/npmrc.html">npmrc(5)</a></code> for more information.</p>
|
|
<p>After that, each of the functions are accessible in the
|
|
commands object: <code>npm.commands.<cmd></code>. See <code><a href="../misc/npm-index.html">npm-index(7)</a></code> for a list of
|
|
all possible commands.</p>
|
|
<p>All commands on the command object take an <strong>array</strong> of positional argument
|
|
<strong>strings</strong>. The last argument to any function is a callback. Some
|
|
commands take other optional arguments.</p>
|
|
<p>Configs cannot currently be set on a per function basis, as each call to
|
|
npm.config.set will change the value for <em>all</em> npm commands in that process.</p>
|
|
<p>To find API documentation for a specific command, run the <code>npm apihelp</code>
|
|
command.</p>
|
|
<h2 id="methods-and-properties">METHODS AND PROPERTIES</h2>
|
|
<ul>
|
|
<li><p><code>npm.load(configs, cb)</code></p>
|
|
<p> Load the configuration params, and call the <code>cb</code> function once the
|
|
globalconfig and userconfig files have been loaded as well, or on
|
|
nextTick if they've already been loaded.</p>
|
|
</li>
|
|
<li><p><code>npm.config</code></p>
|
|
<p> An object for accessing npm configuration parameters.</p>
|
|
<ul>
|
|
<li><code>npm.config.get(key)</code></li>
|
|
<li><code>npm.config.set(key, val)</code></li>
|
|
<li><code>npm.config.del(key)</code></li>
|
|
</ul>
|
|
</li>
|
|
<li><p><code>npm.dir</code> or <code>npm.root</code></p>
|
|
<p> The <code>node_modules</code> directory where npm will operate.</p>
|
|
</li>
|
|
<li><p><code>npm.prefix</code></p>
|
|
<p> The prefix where npm is operating. (Most often the current working
|
|
directory.)</p>
|
|
</li>
|
|
<li><p><code>npm.cache</code></p>
|
|
<p> The place where npm keeps JSON and tarballs it fetches from the
|
|
registry (or uploads to the registry).</p>
|
|
</li>
|
|
<li><p><code>npm.tmp</code></p>
|
|
<p> npm's temporary working directory.</p>
|
|
</li>
|
|
<li><p><code>npm.deref</code></p>
|
|
<p> Get the "real" name for a command that has either an alias or
|
|
abbreviation.</p>
|
|
</li>
|
|
</ul>
|
|
<h2 id="magic">MAGIC</h2>
|
|
<p>For each of the methods in the <code>npm.commands</code> hash, a method is added to
|
|
the npm object, which takes a set of positional string arguments rather
|
|
than an array and a callback.</p>
|
|
<p>If the last argument is a callback, then it will use the supplied
|
|
callback. However, if no callback is provided, then it will print out
|
|
the error or results.</p>
|
|
<p>For example, this would work in a node repl:</p>
|
|
<pre><code>> npm = require("npm")
|
|
> npm.load() // wait a sec...
|
|
> npm.install("dnode", "express")
|
|
</code></pre><p>Note that that <em>won't</em> work in a node program, since the <code>install</code>
|
|
method will get called before the configuration load is completed.</p>
|
|
<h2 id="abbrevs">ABBREVS</h2>
|
|
<p>In order to support <code>npm ins foo</code> instead of <code>npm install foo</code>, the
|
|
<code>npm.commands</code> object has a set of abbreviations as well as the full
|
|
method names. Use the <code>npm.deref</code> method to find the real name.</p>
|
|
<p>For example:</p>
|
|
<pre><code>var cmd = npm.deref("unp") // cmd === "unpublish"
|
|
</code></pre>
|
|
</div>
|
|
|
|
<table border=0 cellspacing=0 cellpadding=0 id=npmlogo>
|
|
<tr><td style="width:180px;height:10px;background:rgb(237,127,127)" colspan=18> </td></tr>
|
|
<tr><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)"> </td><td style="width:40px;height:10px;background:#fff" colspan=4> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4> </td><td style="width:40px;height:10px;background:#fff" colspan=4> </td><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)"> </td><td colspan=6 style="width:60px;height:10px;background:#fff"> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4> </td></tr>
|
|
<tr><td colspan=2 style="width:20px;height:30px;background:#fff" rowspan=3> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:20px;height:10px;background:#fff" rowspan=4 colspan=2> </td><td style="width:10px;height:20px;background:rgb(237,127,127)" rowspan=2> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:20px;height:10px;background:#fff" rowspan=3 colspan=2> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td></tr>
|
|
<tr><td style="width:10px;height:10px;background:#fff" rowspan=2> </td></tr>
|
|
<tr><td style="width:10px;height:10px;background:#fff"> </td></tr>
|
|
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr>
|
|
<tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr>
|
|
</table>
|
|
<p id="footer">npm — npm@2.0.0</p>
|
|
|
|
|