Welcome to mirror list, hosted at ThFree Co, Russian Federation.

npm.html « api « html « npm « deps - github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: b761b6ff170e858156ddbfca90b95e22f536e6c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<!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">

  <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(&quot;npm&quot;)
npm.load(configObject, function (er, npm) {
  // use the npm object, now that it&#39;s loaded.

  npm.config.set(key, val)
  val = npm.config.get(key)

  console.log(&quot;prefix = %s&quot;, npm.prefix)

  npm.commands.install([&quot;package&quot;], cb)
})</code></pre>

<h2 id="VERSION">VERSION</h2>

<p>1.2.2</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="../doc/npm.html">npm(1)</a></code>.</p>

<p>Prior to using npm&#39;s commands,
<code>npm.load()</code> must be called with an object hash of
top-level configs.  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="../doc/config.html">config(1)</a></code> for more information.</p>

<p>After that, each of the functions are accessible in the
commands object: <code>npm.commands.&lt;cmd&gt;</code>.  See <code><a href="../doc/index.html">index(1)</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&#39;ve already been loaded.</p></li><li><p><code>npm.config</code></p><p>An object for accessing npm configuration parameters.</p><ul><li><p><code>npm.config.get(key)</code></p></li><li><code>npm.config.set(key, val)</code></li><li><p><code>npm.config.del(key)</code></p></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&#39;s temporary working directory.</p></li><li><p><code>npm.deref</code></p><p>Get the &quot;real&quot; 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>&gt; npm = require(&quot;npm&quot;)
&gt; npm.load()  // wait a sec...
&gt; npm.install(&quot;dnode&quot;, &quot;express&quot;)</code></pre>

<p>Note that that <em>won&#39;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(&quot;unp&quot;) // cmd === &quot;unpublish&quot;</code></pre>
</div>
<p id="footer">npm &mdash; npm@1.2.2</p>
<script>
;(function () {
var wrapper = document.getElementById("wrapper")
var els = Array.prototype.slice.call(wrapper.getElementsByTagName("*"), 0)
  .filter(function (el) {
    return el.parentNode === wrapper
        && el.tagName.match(/H[1-6]/)
        && el.id
  })
var l = 2
  , toc = document.createElement("ul")
toc.innerHTML = els.map(function (el) {
  var i = el.tagName.charAt(1)
    , out = ""
  while (i > l) {
    out += "<ul>"
    l ++
  }
  while (i < l) {
    out += "</ul>"
    l --
  }
  out += "<li><a href='#" + el.id + "'>" +
    ( el.innerText || el.text || el.innerHTML)
    + "</a>"
  return out
}).join("\n")
toc.id = "toc"
document.body.appendChild(toc)
})()
</script>
</body></html>