解析 react-mentions 包中的标记
parsing markup in react-mentions package
我正在使用 'react-mentions' 库从数据库中提及名字。但是数据格式有一种奇怪的格式。现在我想在 json 中制作这个 format.This 是我的代码:
<MentionsInput
className="comments-textarea"
placeholder=""
value={this.state.value}
onChange={this.handleChange}
onSelect={this.handleSelection}
onBlur={this.handleBlur}
markup={this.state.markup}
autoFocus
>
<Mention
className="comment-user"
type="user"
trigger="cli"
data={this.state.totalImageList}
/>
</MentionsInput>
这是数据的 onchange 函数:
handleChange(event, newValue) {
this.setState({ value: newValue });
console.log("got value",event.target.value)
}
我的 console.log 以这种格式显示数据:
@[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4) @[bedrooom pic 4](f8c88c76-651f-4b45-83d4-8463ae76693c) @[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4)
我只想将其格式化为这样的数组:
{
"id": "dd246746-237f-4231-a9ae-df778a9634b4",
"imageName":"bedroom pic 5
},
这是我对转换它的看法,不过它可以提高性能
var mystr=`@[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4) @[bedrooom pic 4](f8c88c76-651f-4b45-83d4-8463ae76693c) @[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4)`
mystr=mystr.substring(1)
var arry=mystr.split(" @")
var returnArr=[]
var obj={}
for(var a of arry){
var value=a.substring(
a.lastIndexOf("[") + 1,
a.lastIndexOf("]"))
var key=a.substring(
a.lastIndexOf("(") + 1,
a.lastIndexOf(")"));
obj[`imageName`]=value
obj[`id`]=key
returnArr.push(obj)
}
console.log(returnArr)
我正在使用 'react-mentions' 库从数据库中提及名字。但是数据格式有一种奇怪的格式。现在我想在 json 中制作这个 format.This 是我的代码:
<MentionsInput
className="comments-textarea"
placeholder=""
value={this.state.value}
onChange={this.handleChange}
onSelect={this.handleSelection}
onBlur={this.handleBlur}
markup={this.state.markup}
autoFocus
>
<Mention
className="comment-user"
type="user"
trigger="cli"
data={this.state.totalImageList}
/>
</MentionsInput>
这是数据的 onchange 函数:
handleChange(event, newValue) {
this.setState({ value: newValue });
console.log("got value",event.target.value)
}
我的 console.log 以这种格式显示数据:
@[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4) @[bedrooom pic 4](f8c88c76-651f-4b45-83d4-8463ae76693c) @[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4)
我只想将其格式化为这样的数组:
{
"id": "dd246746-237f-4231-a9ae-df778a9634b4",
"imageName":"bedroom pic 5
},
这是我对转换它的看法,不过它可以提高性能
var mystr=`@[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4) @[bedrooom pic 4](f8c88c76-651f-4b45-83d4-8463ae76693c) @[bedrooom pic 5](dd246746-237f-4231-a9ae-df778a9634b4)`
mystr=mystr.substring(1)
var arry=mystr.split(" @")
var returnArr=[]
var obj={}
for(var a of arry){
var value=a.substring(
a.lastIndexOf("[") + 1,
a.lastIndexOf("]"))
var key=a.substring(
a.lastIndexOf("(") + 1,
a.lastIndexOf(")"));
obj[`imageName`]=value
obj[`id`]=key
returnArr.push(obj)
}
console.log(returnArr)