OneNote 添加:TableCell 内容

OneNote Add in: TableCell contents

OneNote 加载项的文档向我们展示了如何获取 table 单元格。在下面的代码片段中(对文档示例进行了少量修改),我在位置 [0,0] 加载了一个 table 单元格。但是,一旦我获得 TableCell,我就不清楚如何加载它的 内容 。我怎么知道 TableCell 的内部包含什么?有什么办法吗

var cell = table.getCell(0,0);
cell.getContents();//Is this correct?

或者这不是考虑获取模式的正确方法,因为内部内容未知?

谢谢!

OneNote.run(function(ctx) {
 var app = ctx.application;
 var outline = app.getActiveOutline();

 // Queue a command to load outline.paragraphs and their types.
 ctx.load(outline, "paragraphs, paragraphs/type");

 // Run the queued commands, and return a promise to indicate task completion.
 return ctx.sync().then(function () {
  var paragraphs = outline.paragraphs;

  // for each table, append a column.
  for (var i = 0; i < paragraphs.items.length; i++) {
   var paragraph = paragraphs.items[i];
   if (paragraph.type == "Table") {
    var table = paragraph.table;
    var cell = table.getCell(0,0);
    //To do - how to get value inside?
   }
  }
  return ctx.sync();
 })
})
.catch(function(error) {
 console.log("Error: " + error);
 if (error instanceof OfficeExtension.Error) {
  console.log("Debug info: " + JSON.stringify(error.debugInfo));
 }
});

参见 table 单元格的官方文档: https://github.com/OfficeDev/office-js-docs/blob/master/reference/onenote/tablecell.md

一个 table 单元格仅包含段落。这些段落可以是富文本、图像、大纲,甚至是另一个 table 行和 table 单元格。

要了解 table 单元格中的内容,您必须加载子段落及其类型,然后根据它们的类型加载子段落属性(与您在你的代码)。