Registry / web-framework / jsx-loader

jsx-loader

JSON →
library0.13.2jsnpmunverified

A Webpack loader for transforming JSX syntax into JavaScript. Version 0.13.2 is the last release (circa 2015), unmaintained for years. Superseded by babel-loader and TypeScript compilers. Supports harmony (ES6) and Flow type stripping via query parameters. No longer recommended for new projects.

npm install jsx-loader
INSTALL
IMPORT
SIG · JSX-LOADER
J
jsx-loader
web-frameworkjavascriptv0.13.2
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
module.exports = {..., loader: 'jsx-loader'}
import { jsxLoader } from 'jsx-loader'
jsx-loader is not a JavaScript module; it's referenced as a string in Webpack config.
jsx-loader
{ test: /\.jsx?$/, loader: 'jsx-loader' }
{ test: /\.jsx?$/, loader: require.resolve('jsx-loader') }
Webpack resolves loader strings automatically. Using require.resolve is unnecessary and can cause issues.
harmony
{ test: /\.jsx?$/, loader: 'jsx-loader?harmony' }
{ test: /\.jsx?$/, loader: 'jsx-loader?es6' }
Use 'harmony' query parameter for ES6 features, not 'es6'.

Basic Webpack config using jsx-loader to transform JSX files with harmony (ES6) support.

// webpack.config.js module.exports = { entry: './app.jsx', output: { filename: 'bundle.js' }, module: { loaders: [ { test: /\.jsx?$/, loader: 'jsx-loader?harmony' } ] } };
Debug
Known issues
deprecatedjsx-loader is no longer maintained. Use babel-loader or @babel/preset-react instead.
fix
Replace with babel-loader and configure @babel/preset-react.
affects: >=0.0.1
breakingWebpack 2+ changed loader resolution; jsx-loader may not work with Webpack 2+ without additional configuration.
fix
Use require.resolve('jsx-loader') in Webpack 2+ or migrate to babel-loader.
affects: >=2.0.0
gotchaThe harmony parameter enables experimental ES6 features via react-tools; it does not support modern JavaScript features like arrow functions or classes beyond basic ES6.
fix
Use babel-loader with correct presets for comprehensive ES6+ support.
affects: >=0.0.1
Errors
Common errors & fixes
Module build failed: Error: Cannot find module 'react-tools'
Missing react-tools dependency
fix
npm install react-tools --save-dev
Module parse failed: Unexpected token (1:0) You may need an appropriate loader to handle this file type.
Webpack is not configured to use jsx-loader for .jsx files
fix
Ensure webpack config includes loader for .jsx files: { test: /\.jsx?$/, loader: 'jsx-loader' }
Uncaught ReferenceError: React is not defined
JSX transformed code requires React in scope
fix
Add /** @jsx React.DOM */ pragma at top of file or use insertPragma parameter: 'jsx-loader?insertPragma=React.DOM'
Upgrade
Version history
0.13.2latest on npm
Audit
Dependencies
webpackrequiredWebpack loader, requires Webpack to function
react-toolsrequiredUsed internally for JSX transformation
Agent activity
2 hits · last 30 days
node
2
Resources
jsx-loader — npm install jsx-loader · libregistry