|
@@ -114,7 +114,7 @@ export default {
|
|
var currentIndex1 = 0
|
|
var currentIndex1 = 0
|
|
for(var i = 0;i<data.length;i++){
|
|
for(var i = 0;i<data.length;i++){
|
|
if(data[i].type == 'text'){
|
|
if(data[i].type == 'text'){
|
|
- if(this.selectObj.startIndex >= currentIndex && this.selectObj.startIndex<=currentIndex + data[i].text.length && !sign){
|
|
|
|
|
|
+ if(this.selectObj.startIndex >= currentIndex && this.selectObj.startIndex<currentIndex + data[i].text.length && !sign){
|
|
startIndex = i
|
|
startIndex = i
|
|
sign = true
|
|
sign = true
|
|
}else{
|
|
}else{
|
|
@@ -123,7 +123,7 @@ export default {
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
- if(this.selectObj.endIndex >= currentIndex1 && this.selectObj.endIndex<=currentIndex1 + data[i].text.length){
|
|
|
|
|
|
+ if(this.selectObj.endIndex > currentIndex1 && this.selectObj.endIndex<=currentIndex1 + data[i].text.length){
|
|
endIndex = i
|
|
endIndex = i
|
|
break
|
|
break
|
|
}else{
|
|
}else{
|
|
@@ -136,6 +136,7 @@ export default {
|
|
if(startIndex == endIndex){
|
|
if(startIndex == endIndex){
|
|
var prevTag = this.checkPrevTag(data,startIndex,tag)
|
|
var prevTag = this.checkPrevTag(data,startIndex,tag)
|
|
var nextTag = this.checkNextTag(data,startIndex,tag)
|
|
var nextTag = this.checkNextTag(data,startIndex,tag)
|
|
|
|
+
|
|
if(prevTag && nextTag){
|
|
if(prevTag && nextTag){
|
|
if(this.selectObj.startIndex == currentIndex && this.selectObj.endIndex == currentIndex+item.text.length){
|
|
if(this.selectObj.startIndex == currentIndex && this.selectObj.endIndex == currentIndex+item.text.length){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
@@ -153,6 +154,14 @@ export default {
|
|
}
|
|
}
|
|
data.splice(startIndex,1,...arr)
|
|
data.splice(startIndex,1,...arr)
|
|
}
|
|
}
|
|
|
|
+ else if(prevTag.tag == `</${tag}>` && nextTag.tag == `<${tag}>`){
|
|
|
|
+
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(0,this.selectObj.startIndex - currentIndex)})
|
|
|
|
+ arr.push({type:'tag',text:`<${tag}>`})
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(this.selectObj.startIndex - currentIndex,item.text.length)})
|
|
|
|
+ data[nextTag.index].del = true
|
|
|
|
+ data.splice(startIndex,1,...arr)
|
|
|
|
+ }
|
|
}else if(this.selectObj.startIndex == currentIndex && this.selectObj.endIndex < currentIndex+item.text.length){
|
|
}else if(this.selectObj.startIndex == currentIndex && this.selectObj.endIndex < currentIndex+item.text.length){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
if(prevTag.index != startIndex - 1){
|
|
if(prevTag.index != startIndex - 1){
|
|
@@ -163,6 +172,14 @@ export default {
|
|
arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
data.splice(startIndex,1,...arr)
|
|
data.splice(startIndex,1,...arr)
|
|
}
|
|
}
|
|
|
|
+ else if(prevTag.tag == `</${tag}>` && nextTag.tag == `<${tag}>`){
|
|
|
|
+
|
|
|
|
+ data[prevTag.index].del = true
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(0,this.selectObj.endIndex - currentIndex)})
|
|
|
|
+ arr.push({type:'tag',text:`</${tag}>`})
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
|
|
+ data.splice(startIndex,1,...arr)
|
|
|
|
+ }
|
|
}else if(this.selectObj.startIndex > currentIndex && this.selectObj.endIndex < currentIndex+item.text.length){
|
|
}else if(this.selectObj.startIndex > currentIndex && this.selectObj.endIndex < currentIndex+item.text.length){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
if(prevTag.tag == `<${tag}>` && nextTag.tag == `</${tag}>`){
|
|
arr.push({type:'text',text:item.text.substring(0,this.selectObj.startIndex - currentIndex)})
|
|
arr.push({type:'text',text:item.text.substring(0,this.selectObj.startIndex - currentIndex)})
|
|
@@ -171,6 +188,13 @@ export default {
|
|
arr.push({type:'tag',text:`<${tag}>`})
|
|
arr.push({type:'tag',text:`<${tag}>`})
|
|
arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
data.splice(startIndex,1,...arr)
|
|
data.splice(startIndex,1,...arr)
|
|
|
|
+ }else if(prevTag.tag == `</${tag}>` && nextTag.tag == `<${tag}>`){
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(0,this.selectObj.startIndex - currentIndex)})
|
|
|
|
+ arr.push({type:'tag',text:`<${tag}>`})
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(this.selectObj.startIndex - currentIndex,this.selectObj.endIndex - currentIndex)})
|
|
|
|
+ arr.push({type:'tag',text:`</${tag}>`})
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(this.selectObj.endIndex - currentIndex,item.text.length)})
|
|
|
|
+ data.splice(startIndex,1,...arr)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -233,7 +257,7 @@ export default {
|
|
data.splice(startIndex,1,...arr)
|
|
data.splice(startIndex,1,...arr)
|
|
}
|
|
}
|
|
else if(this.selectObj.startIndex > currentIndex && this.selectObj.startIndex == currentIndex + item.text.length){
|
|
else if(this.selectObj.startIndex > currentIndex && this.selectObj.startIndex == currentIndex + item.text.length){
|
|
- arr.push({type:'text',text:item.text.substring(0,item.text.length -1)})
|
|
|
|
|
|
+ arr.push({type:'text',text:item.text.substring(0,item.text.length)})
|
|
arr.push({type:'tag',text:`</${tag}>`})
|
|
arr.push({type:'tag',text:`</${tag}>`})
|
|
arr.push({type:'text',text:item.text.substring(item.text.length -1,item.text.length)})
|
|
arr.push({type:'text',text:item.text.substring(item.text.length -1,item.text.length)})
|
|
data.splice(endIndex,1,...arr)
|
|
data.splice(endIndex,1,...arr)
|