使用docx库复制节点时生成损坏DOC文件的问题求助
docx库复制节点时生成损坏DOC文件的问题求助
我正在尝试用docx库构建一个支持插件架构的工具,希望插件提供的数据能和现有生态兼容。但遇到了一个奇怪的问题:直接在应用里用docx库实例创建的数据能正常工作,可通过其他依赖docx的库生成的相同数据却会出问题。
一开始完全摸不着头绪,直到我做了个简单测试:
// 简化后的测试代码 new Document({ sections: [ { children: Object.assign({}, new Paragraph("some text")) } ] })
不用Object.assign的时候生成的文档完全正常,但一用这个方法复制节点,生成的文档就损坏了。
对比正常和损坏的文件后我发现,损坏文件的document.xml中,本该是<w:r><w:t xml:space="preserve">some text here</w:t></w:r>的内容,被替换成了<rootKey>w:r</rootKey>。
我留意到docx官方仓库里有个编号为2988的相关issue,也试着翻了docx的代码库,但没找到导致这个问题的明显原因。目前我的具体实现代码在mdast2docx项目对应提交版本的lib/src/section.ts文件第106行。
有没有大佬能帮忙分析下这个问题的原因呀?
备注:内容来源于stack exchange,提问作者Mayank Kumar Chaudhari
相关产品推荐
相关产品推荐

