在为 SharePoint 2013 开发(SharePoint 托管)应用程序部件时,我不断收到错误消息“未定义对象”。在其他情况下(取决于我正在加载的外部 .js 文件),我可能会收到“功能”未定义错误。更具体地说:当我将应用程序部件添加到(wiki)页面时,我只会收到此错误。该页面以标准模式在 IE9 中加载(但错误也发生在 Compat View 中)。
我在 Microsoft 找到了以下信息:如果从 DOM 树中删除 iFrame,则 API 不可用 => http://msdn.microsoft.com/en-us/library/gg622929(v=VS.85).aspx?ppud= 4
我已经在我尝试加载的 HTML 页面的头部添加了一个简单的警报作为应用程序部件的源(实际上是一个简单的 IFrame 对象),并且确实在添加应用程序部件时页面被加载了多次. 添加应用程序部件后,警报只会触发一次,我不会遇到任何“对象”未定义的错误。所以我怀疑我的 App Part 是先创建然后多次操作(从 DOM 连接和分离)。
似乎我的 App Part,因为它暂时从 DOM 中删除,所以删除了 JavaScript API!如果是这样的话,那么我该如何开发依赖 JavaScript 的 App Parts(他们不应该首先不依赖 JavaScript 吗?!)...