Excel JS 加载项 - 共享运行时不起作用



我正在尝试使用"共享运行时"来使用我的 Excel JS 加载项,但它不起作用。以下是我一直在审查的文档。以下是我的项目的屏幕截图。看起来我可以设置初始状态,但我的自定义函数没有更新 window.sharedState。我也尝试使用 Excel 上下文对象,但这也不起作用。

文档链接


  1. https://learn.microsoft.com/en-us/office/dev/add-ins/tutorials/share-data-and-events-between-custom-functions-and-the-task-pane-tutorial


  2. https://learn.microsoft.com/en-us/office/dev/add-ins/excel/configure-your-add-in-to-use-a-shared-runtime

项目截图

我的 Excel 加载项项目(屏幕截图 #1(

我的 Excel 加载项清单.xml文件(屏幕截图 #2(

感谢您分享项目的关键部分!您的屏幕截图非常有帮助!

自定义函数可以读取共享状态这一事实是一个好兆头。

自定义函数未更改共享状态的原因可能是您没有提供有效的 JSON。我看到您尝试设置的值存在几个问题:

  1. { ... }必须是文字,即您不能在里面使用变量。因此,像{ oldVal: originalVal }这样的事情是无效的。如果要使用变量,则必须以编程方式分配这些值,例如
window.sharedState.test = {};
window.sharedState.test.oldVal = originalVal;
  1. 文字{ first, second }无效 - 它不遵循property: value模式。
  2. 虽然 JavaScript 和 TypeScript 可能允许使用不带引号的属性名称,但最好养成像{ "something": 42 }一样引用它们的习惯。

最新更新