要检测Web应用程序是否在独立运行,可以使用amp-script的isStandalone()方法。这个方法返回一个布尔值,指示Web应用程序是否在独立运行。
下面是一个示例代码,展示如何使用amp-script的isStandalone()方法来检测Web应用程序是否在独立运行:
// amp-script.js
import {createCustomEvent} from './utils';
export function runCheck() {
const isStandalone = this.isStandalone();
const statusElement = document.getElementById('status');
if (isStandalone) {
statusElement.textContent = 'Web应用程序正在独立运行';
} else {
statusElement.textContent = 'Web应用程序不在独立运行';
}
// 创建一个自定义事件,用于通知AMP页面检测完成
const event = createCustomEvent('standaloneCheckComplete', {isStandalone: isStandalone});
this.dispatchEvent(event);
}
在上面的代码中,我们在amp-script标签内部定义了一个按钮和一个用于显示状态的div。当按钮被点击时,它会调用runCheck()方法。runCheck()方法首先调用isStandalone()方法获取Web应用程序是否在独立运行的信息,然后将结果显示在status元素中。
此外,我们还创建了一个自定义事件standaloneCheckComplete,并将其分派给amp-script,以便在检测完成后通知AMP页面。
请注意,上述代码中的createCustomEvent()函数是一个自定义的辅助函数,用于创建自定义事件。你可以根据需要自行实现该函数。
这是一个简单的示例,展示了如何使用amp-script的isStandalone()方法来检测Web应用程序是否在独立运行。你可以根据自己的需求对代码进行修改和扩展。