Blame view

node_modules/resolve-url/readme.md 2.37 KB
2a09d1a4   liuqimichale   添加宜春 天水 宣化
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
  Overview
  ========
  
  [![browser support](https://ci.testling.com/lydell/resolve-url.png)](https://ci.testling.com/lydell/resolve-url)
  
  Like Node.js’ [`path.resolve`]/[`url.resolve`] for the browser.
  
  ```js
  var resolveUrl = require("resolve-url")
  
  window.location
  // https://example.com/articles/resolving-urls/edit
  
  resolveUrl("remove")
  // https://example.com/articles/resolving-urls/remove
  
  resolveUrl("/static/scripts/app.js")
  // https://example.com/static/scripts/app.js
  
  // Imagine /static/scripts/app.js contains `//# sourceMappingURL=../source-maps/app.js.map`
  resolveUrl("/static/scripts/app.js", "../source-maps/app.js.map")
  // https://example.com/static/source-maps/app.js.map
  
  resolveUrl("/static/scripts/app.js", "../source-maps/app.js.map", "../coffee/app.coffee")
  // https://example.com/static/coffee/app.coffee
  
  resolveUrl("//cdn.example.com/jquery.js")
  // https://cdn.example.com/jquery.js
  
  resolveUrl("http://foo.org/")
  // http://foo.org/
  ```
  
  
  Installation
  ============
  
  - `npm install resolve-url`
  - `bower install resolve-url`
  - `component install lydell/resolve-url`
  
  Works with CommonJS, AMD and browser globals, through UMD.
  
  
  Usage
  =====
  
  ### `resolveUrl(...urls)` ###
  
  Pass one or more urls. Resolves the last one to an absolute url, using the
  previous ones and `window.location`.
  
  It’s like starting out on `window.location`, and then clicking links with the
  urls as `href` attributes in order, from left to right.
  
  Unlike Node.js’ [`path.resolve`], this function always goes through all of the
  arguments, from left to right. `path.resolve` goes from right to left and only
  in the worst case goes through them all. Should that matter.
  
  Actually, the function is _really_ like clicking a lot of links in series: An
  actual `<a>` gets its `href` attribute set for each url! This means that the
  url resolution of the browser is used, which makes this module really
  light-weight.
  
  Also note that this functions deals with urls, not paths, so in that respect it
  has more in common with Node.js’ [`url.resolve`]. But the arguments are more
  like [`path.resolve`].
  
  [`path.resolve`]: http://nodejs.org/api/path.html#path_path_resolve_from_to
  [`url.resolve`]: http://nodejs.org/api/url.html#url_url_resolve_from_to
  
  
  Tests
  =====
  
  Run `npm test`, which lints the code and then gives you a link to open in a
  browser of choice (using `testling`).
  
  
  License
  =======
  
  [The X11 (“MIT”) License](LICENSE).