Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
react-edit-inline
Advanced tools
A simple inline text editor for React with ECMAScript 6 + JSX Harmony syntax
Before you continue, check out a successor to this repo: React Inline Edit Kit. It is more functional, and will be maintained in future.
This is a simple React component for in-place text editing. It turns into an <input />
when focused, and tries to validate and save input on Enter or blur
. Esc works as well for cancelling.
Watch a demo, then check out demo/index.jsx for a quick example.
npm install react-edit-inline --save-dev
text
:string
initial textparamName
:string
name of the parameter to be returned to change
functionchange
:function
function to call when new text is changed and validated, it will receive {paramName: value}
className
:string CSS class nameactiveClassName
:string CSS class replacement for when in edit modevalidate
:function boolean function for custom validation, using this overrides the two props belowminLength
:number minimum text length, default 1
maxLength
:number maximum text length, default 256
editingElement
:string element name to use when in edit mode (DOM must have value
property) default input
staticElement
:string element name for displaying data default span
editing
:boolean If true, element will be in edit modetabIndex
:number tab index used for focusing with TAB key default 0
stopPropagation
:boolean If true, the event onClick will not be further propagated.import React from 'react';
import InlineEdit from 'react-edit-inline';
class MyParentComponent extends React.Component {
constructor(props){
super(props);
this.dataChanged = this.dataChanged.bind(this);
this.state = {
message: 'ReactInline demo'
}
}
dataChanged(data) {
// data = { description: "New validated text comes here" }
// Update your model from here
console.log(data)
this.setState({...data})
}
customValidateText(text) {
return (text.length > 0 && text.length < 64);
}
render() {
return (<div>
<h2>{this.state.message}</h2>
<span>Edit me: </span>
<InlineEdit
validate={this.customValidateText}
activeClassName="editing"
text={this.state.message}
paramName="message"
change={this.dataChanged}
style={{
backgroundColor: 'yellow',
minWidth: 150,
display: 'inline-block',
margin: 0,
padding: 0,
fontSize: 15,
outline: 0,
border: 0
}}
/>
</div>)
}
}
FAQs
A simple inline text editor for React with ECMAScript 6 + JSX Harmony syntax
The npm package react-edit-inline receives a total of 316 weekly downloads. As such, react-edit-inline popularity was classified as not popular.
We found that react-edit-inline demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
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.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.