file-component

File & FileReader wrappers

File

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

node.js:

$ npm install file-component

browser:

$ component install component/file
  • error an error occurred
  • progress in progress (e.percent etc)
  • end read is complete
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(errstr){
    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);
  });
};

Wraps a File object:

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

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');

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

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

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

MIT