|
1 |
| -stream-to-promise [](https://travis-ci.org/bendrucker/stream-to-promise) [](http://badge.fury.io/js/stream-to-promise) |
| 1 | +stream-to-promise [](https://travis-ci.org/bendrucker/stream-to-promise) |
2 | 2 | =================
|
3 | 3 |
|
4 |
| -Convert streams (readable or writable) to promises |
| 4 | +> Convert streams (readable or writable) to promises |
5 | 5 |
|
| 6 | +## Installing |
| 7 | + |
| 8 | +```sh |
| 9 | +$ npm install --save[-dev] stream-to-promise |
| 10 | +``` |
| 11 | + |
| 12 | +## Examples |
| 13 | + |
| 14 | +### Readable Streams |
6 | 15 |
|
7 | 16 | ```js
|
8 | 17 | streamToPromise(readableStream).then(function (buffer) {
|
9 | 18 | // buffer.length === 3
|
10 |
| -}); |
11 |
| -readableStream.emit('data', new Buffer()); |
12 |
| -readableStream.emit('data', new Buffer()); |
13 |
| -readableStream.emit('data', new Buffer()); |
14 |
| -readableStream.emit('end'); // promise is resolved here |
| 19 | +}) |
| 20 | +readableStream.emit('data', new Buffer()) |
| 21 | +readableStream.emit('data', new Buffer()) |
| 22 | +readableStream.emit('data', new Buffer()) |
| 23 | +readableStream.emit('end') // promise is resolved here |
15 | 24 | ```
|
16 | 25 |
|
| 26 | +### Writable Streams |
| 27 | + |
17 | 28 | ```js
|
18 | 29 | streamToPromise(writableStream).then(function () {
|
19 | 30 | // resolves undefined
|
20 |
| -}); |
21 |
| -writableStream.write('data'); |
22 |
| -writeableStream.end(); // promise is resolved here |
| 31 | +}) |
| 32 | +writableStream.write('data') |
| 33 | +writeableStream.end() // promise is resolved here |
23 | 34 | ```
|
24 | 35 |
|
| 36 | +### Error Handling |
| 37 | + |
25 | 38 | ```js
|
26 |
| -var err = new Error(); |
| 39 | +var err = new Error() |
27 | 40 | streamToPromise(stream).catch(function (error) {
|
28 |
| - // error === err; |
29 |
| -}); |
30 |
| -stream.emit('error', err); // promise is rejected here |
| 41 | + // error === err |
| 42 | +}) |
| 43 | +stream.emit('error', err) // promise is rejected here |
31 | 44 | ```
|
0 commit comments