编辑:这看起来像这个Unresolved Question的副本。我将其标记为已回答还是删除?
我在 Vue CLI 3 应用程序中使用来自 workbox-webpack-plugin 的 InjectManifest。我注入的自定义服务工作者处理 Firebase 云消息传递 (FCM)。我需要根据我的环境(本地、暂存和生产环境)收听来自不同发件人的消息。
理想情况下,service-worker.js 应该是这样的:
importScripts('https://www.gstatic.com/firebasejs/4.8.1/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/4.8.1/firebase-messaging.js');
firebase.initializeApp({
'messagingSenderId': process.env.VUE_APP_FCM_SENDER_ID
});
然而,这段代码似乎没有被 webpack 触及,因为输出服务工作者仍然读取process.env.VUE_APP_FCM_SENDER_ID
而不是硬编码的密钥。
如何通过 webpack 运行我的 service worker 来解析环境变量?