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

问题描述 投票:1回答:1

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

文档链接

  1. https://docs.microsoft.com/en-us/office/dev/add-ins/tutorials/share-data-and-events-between-custom-functions-and-the-task-pane-tutorial
  2. https://docs.microsoft.com/en-us/office/dev/add-ins/excel/configure-your-add-in-to-use-a-shared-runtime

项目截图

My Excel Add-In Project (screenshot #1)

My Excel Add-In manifest.xml file (screenshot #2)

reactjs office-js excel-addins custom-functions-excel
1个回答
2
投票

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

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

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

  1. { ... }必须为文字,即您不能在其中使用变量。因此,{ oldVal: originalVal }之类的内容无效。如果要使用变量,则必须以编程方式分配这些值,例如
window.sharedState.test = {};
window.sharedState.test.oldVal = originalVal;
  1. 文字{ first, second }无效-它不遵循property: value模式。
  2. 虽然JavaScript和TypeScript可能允许使用不带引号的属性名,但是养成像{ "something": 42 }那样引用它们的习惯是很好的。
© www.soinside.com 2019 - 2024. All rights reserved.