Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
higher level File and FileReader API
branch: master
Failed to load latest commit information.
test refactor for latest component(1)
.gitignore refactor for latest component(1)
.npmignore
History.md Release 0.1.1
Makefile refactor for latest component(1)
Readme.md add browser installation directions
component.json
file.js
index.js
package.json
reader.js use Emiiter() mixin

Readme.md

File

File component wrapping the native File and FileReader objects with a higher level API.

Installation

node.js:

$ npm install file-component

browser:

$ component install component/file

Events

Reader

  • error an error occurred
  • progress in progress (e.percent etc)
  • end read is complete

Example

var file = require('file');
var input = document.querySelector('input');

input.onchange = function(){
  var img = file(input.files[0]);

  if (!img.is('image/*')) {
    alert('Images only!');
    return;
  }

  var reader = img.toDataURL(function(err, str){
    if (err) throw err;
    var img = document.createElement('img');
    img.src = str;
    img.height = 300;
    document.body.appendChild(img);
  });

  reader.on('progress', function(e){
    console.log(e.percent);
  });
};

API

file(file)

Wraps a File object:

var file = require('file');
file(input.files[0]);

File#is(type)

Returns a boolean if the file's mime type matches type:

var file = require('file');
file(input.files[0]);
file.is('image/*');
file.is('image/jpeg');
file.is('*/json');

File#toArrayBuffer(fn)

Convert to an ArrayBuffer and invoke fn(err, result), returns a Reader.

File#toText(fn)

Convert to text and invoke fn(err, result), returns a Reader.

File#toDataURL(fn)

Convert to a data uri string and invoke fn(err, result), returns a Reader.

License

MIT

Something went wrong with that request. Please try again.