🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

react-html-replace

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-html-replace

A simple way to safely do html tag replacement with React components

0.1.6
latest
Source
npm
Version published
Weekly downloads
62
-32.61%
Maintainers
1
Weekly downloads
 
Created
Source

react-html-replace

A simple way to safely do html tag replacement with React components

Install

$ npm install --save react-html-replace

Usage

Simple Example

import React, { Component } from 'react';
import { render } from 'react-dom';

import reactHtmlReplace from 'react-html-replace';

const Mention = props => {
  const { children, id, name } = props;
  return (
    <span name={name} id={id} style={{ border: '1px solid #ccc' }}>
      &nbsp;{children}&nbsp;
    </span>
  );
};

class Demo extends Component {
  render() {
    return (
      <div>
        {reactHtmlReplace(
          `<italic>This is <bold> xml string</bold> with custom nexted markup,<bold> we can get inner markup & attribute  through props.</bold></italic> <mention id ="123" name ="raodurgesh">  this is mention tag with id & name attributes </mention> <hashtag tag="howdymody" href ="http://google.com"></hashtag>`,
          (tag, props) => {
            if (tag === 'bold') {
              return <b />;
            }
            if (tag === 'italic') {
              return <i />;
            }
            if (tag === 'mention') {
              const { name, id } = props;
              return <Mention name={name} id={id}></Mention>;
            }
            if (tag === 'hashtag') {
              const { tag, href } = props;
              return <a href={href}>{`#${tag}`}</a>;
            }
          }
        )}
      </div>
    );
  }
}

render(<Demo />, document.querySelector('#demo'));

Output (of above code)

This is xml string with custom nexted markup, we can get inner markup & attribute through props.   this is mention tag with id & name attribute this is mention tag with id & name attribute   #howdymody

Params

import reactHtmlReplace from 'react-html-replace';

reactHtmlReplace(xmlstring, callbackfunction);

xmlstring : the html string must have opening and closing tags.

callbackfunction :

  • tag : (html custom tag)
  • Props : _Attributes of tag

i.e ,

xmlstring :<bold> This is </bold><link href = "https://github.com">demo</link>

callbackfunction : (tag, props):

tag : bold , link

props : href

children : In react component, we can have special React.Children as array(as show in Mention Component)

Getting started

npm install
npm start
# go to localhost:3000 if it doesnt open automatically

Keywords

react-component

FAQs

Package last updated on 29 Sep 2019

Did you know?

Socket

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