Published
Edited
Mar 13, 2021
Importers
2 stars
Insert cell
Insert cell
Insert cell
make_file_reader = default_text => {
var dom = html`<div><input type='file' accept='*'>`;
var inp = dom.getElementsByTagName('input')[0];
var r = new FileReader();
dom.value = default_text;
r.onload = () => {
dom.value = r.result;
dom.dispatchEvent(new CustomEvent("input"));
};
inp.addEventListener('change', () => {
r.readAsText(inp.files[0]);
});
return dom;
}
Insert cell
Insert cell
viewof example = make_file_reader("Select a file!")
Insert cell
Insert cell
example
Insert cell
viewof example_undefined = make_file_reader()
Insert cell
example_undefined
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more