我们的服务器使用react,graphql,mongo和express进行如下设置:
public
index.html
service.js
src
assets
client (has 2 client side js files)
components (for react)
game.jsx
server (graphql server)
server.js
我需要注册一个服务人员,以便可以向玩家发送推送通知;调用来自game.jsx(当我希望注册serviceWorker时被加载的调用):
const swreg = await navigator.serviceworker.register('service.js');
这会导致对ourURL.com/service.js的获取请求(因此,为什么将service.js设置在公共位置,因为它是在这里提供的)
这很好,但我随后在service.js中不断出现导入错误:
Uncaught SyntaxError: Unexpected token {
这是service.js中有问题的代码:
import { saveSubscription } from "src/queries/queries";
saveSubscription是一个graphql突变调用,在src / queries / queries.js中定义。
我尝试了其他形式的导入,但是它们给了我某种语法错误。 Googling告诉我,我需要一个type =“ module”标签,该标签显然不适用于这种情况。
我怎么解决这个问题?谢谢!
答案 0 :(得分:0)
我修复了它。。。
我删除了导入行,而是在函数内使用了访存。
fetch(url, {
method: "POST", // get can't have body
'Content-Type': 'application/graphql',
body: JSON.stringify({graphQLQuery})
});