office-js - 替换范围中的第一个单词会导致从 word office js 中的范围中省略该单词
问题描述
我正在研究要替换段落范围中的单词的项目。当我从范围中替换第一个单词时,它会省略第一个替换的单词并从第二个单词开始,这会导致我的位置不匹配问题。这是重现它的代码片段:
function run() {
Word.run(async (context) => {
console.log("script started");
try{
var para = context.document.body.paragraphs;
context.load(para, 'text');
await context.sync();
var range = para.items[0].getRange();
context.load(range, 'text');
await context.sync();
console.log(range.text); //here it shows whole paragraph
var found = "learn"; //first words in paragraph
var replacement = "Learn"; //replacements
var searchResults = range.search(found,{matchCase: true , matchWholeWord:true});
context.load(searchResults,'text');
await context.sync();
searchResults.items[0].insertText(replacement,Word.InsertLocation.replace);
context.load(range,'text');
await context.sync();
console.log(range.text); //first replaced word is missing from range
} catch (err){
console.log(err);
}
});
}
注意:将找到并替换为文本中的第一个单词。
解决方案
推荐阅读
- python - PyInstaller 生成的可执行文件中的 Python SSL 导入错误
- reactjs - 如何用阿波罗链接错误显示一个漂亮的错误
- laravel - 密码重置时应用了不需要的验证规则
- java - if / else的可选方式
- javascript - Safari/Iphone 弹跳效果在 JavaScript 代码中触发向下滚动功能,使导航栏消失
- java - getBackground() 在 android 中返回什么?
- vue.js - npm run serve 在运行时卡在 40%
- active-directory - ObjectClass=user 和 (&(sAMAccountType=805306368)(sAMAccountName=userName)) 有什么区别?
- r - 如何使用 plotly subplots() 删除重复的图例条目
- java - 如何从android java中的另一个活动访问asyntask的返回值