Socket
Socket
Sign inDemoInstall

@babel/plugin-transform-react-jsx-self

Package Overview
Dependencies
1
Maintainers
1
Versions
73
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @babel/plugin-transform-react-jsx-self

Add a __self prop to all JSX Elements


Version published
Weekly downloads
6.9M
increased by5.81%
Maintainers
1
Install size
4.78 kB
Created
Weekly downloads
 

Package description

What is @babel/plugin-transform-react-jsx-self?

The @babel/plugin-transform-react-jsx-self plugin is used with Babel to transform JSX code in React. It adds a __self attribute to JSX elements which is used by React for development tools to provide more informative error messages and warnings. This attribute includes a reference to the component that created each element, which can be helpful for debugging purposes.

What are @babel/plugin-transform-react-jsx-self's main functionalities?

Adding __self attribute to JSX elements

This feature automatically adds a __self attribute to every JSX element, which is set to 'this' (the current React component instance). This is useful for React's development mode error messages and warnings, as it helps identify which component the JSX element came from.

class MyComponent extends React.Component {
  render() {
    return <div>Hello, world!</div>;
  }
}

// Transformed JSX with @babel/plugin-transform-react-jsx-self
// <div __self={this}>Hello, world!</div>

Other packages similar to @babel/plugin-transform-react-jsx-self

Readme

Source

@babel/plugin-transform-react-jsx-self

Adds __self prop to JSX elements, which React will use to generate some runtime warnings. All React users should enable this transform in dev mode.

Example

In

<sometag />

Out

<sometag __self={this} />

Installation

npm install --save-dev @babel/plugin-transform-react-jsx-self

Usage

.babelrc

{
  "plugins": ["@babel/transform-react-jsx-self"]
}

Via CLI

babel --plugins @babel/transform-react-jsx-self script.js

Via Node API

require("@babel/core").transform("code", {
  plugins: ["@babel/transform-react-jsx-self"]
});

Keywords

FAQs

Last updated on 30 Oct 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc