What is path-loader?
The path-loader npm package is designed to load resources from various paths, including local file paths, URLs, and more. It provides a unified way to fetch and load data from different sources, making it easier to handle resource loading in a consistent manner.
What are path-loader's main functionalities?
Load from Local File System
This feature allows you to load a resource from the local file system. The code sample demonstrates how to load a JSON file from a specified local path and handle the loaded data or any errors that occur.
const PathLoader = require('path-loader');
PathLoader.load('/path/to/local/file.json')
.then(data => {
console.log(data);
})
.catch(err => {
console.error(err);
});
Load from URL
This feature allows you to load a resource from a URL. The code sample demonstrates how to load a JSON file from a specified URL and handle the loaded data or any errors that occur.
const PathLoader = require('path-loader');
PathLoader.load('https://example.com/data.json')
.then(data => {
console.log(data);
})
.catch(err => {
console.error(err);
});
Load from Multiple Sources
This feature allows you to load resources from multiple sources simultaneously. The code sample demonstrates how to load JSON files from both local paths and URLs, and handle the loaded data or any errors that occur.
const PathLoader = require('path-loader');
const paths = ['/path/to/local/file.json', 'https://example.com/data.json'];
Promise.all(paths.map(path => PathLoader.load(path)))
.then(results => {
results.forEach(data => console.log(data));
})
.catch(err => {
console.error(err);
});
Other packages similar to path-loader
axios
Axios is a popular promise-based HTTP client for the browser and Node.js. It can be used to make HTTP requests to fetch data from URLs, similar to the URL loading feature of path-loader. However, axios does not natively support loading from the local file system.
fs-extra
fs-extra is a module that extends the native Node.js file system module (fs) with additional methods. It can be used to read files from the local file system, similar to the local file loading feature of path-loader. However, fs-extra does not support loading resources from URLs.
node-fetch
node-fetch is a lightweight module that brings window.fetch to Node.js. It can be used to make HTTP requests to fetch data from URLs, similar to the URL loading feature of path-loader. Like axios, node-fetch does not natively support loading from the local file system.
path-loader
Utility that provides a single API for loading the content of a path/URL. This module works in the browser and in
io.js/Node.js. Right now this module supports the following loaders:
- http/https: This loader is used by default in the browser and will also be used in io.js/Node.js if the location being
loaded starts with
http:
or https:
- file: This loader is the used by default in io.js/Node.js and will throw an error in the browser (Due to how
locations are mapped to loaders, the only way to use the
file
loader in the browser is to attempt to load a file using
the URL-version of its location. (Example: file:///Users/not-you/projects/path-loader/package.json
))
In the future, there will likely be a pluggable infrastructure for altering this list or overriding the loaders provided
by the project but for now that is not an option.
Project Badges
- Build status:
- Dependencies:
- Developer dependencies:
- Downloads:
- Gitter:
- License:
- Version:
Installation
path-loader is available for both Node.js and the browser. Installation instructions for each environment are below.
Browser
Installation for browser applications can be done via Bower or by downloading a standalone binary.
Using Bower
bower install path-loader --save
Standalone Binaries
The standalone binaries come in two flavors:
Node.js
Installation for Node.js applications can be done via NPM.
npm install path-loader --save
Documentation
The documentation for this project can be found here: https://github.com/whitlockjc/path-loader/blob/master/docs/README.md