将 Google Web 身份验证添加到 Svelte/Sapper 的“正确”方法是什么?

ran*_*sen 3 google-authentication svelte

看看 Svelte/Sapper,我很好奇将Google Sign-In for Websites 之类的东西添加到我的应用程序的正确方法是什么。

我从他们从上面的站点给你的示例代码中得到了一切,但我已经通过将 onsuccess "onSignIn" 函数添加到 template.html 文件来完成它,这似乎不是正确的方法。

在 src/routes/template.html 里面

<script src="https://apis.google.com/js/platform.js" async defer></script>
<script>
  function onSignIn(googleUser) {
    var profile = googleUser.getBasicProfile();
    console.log("ID: " + profile.getId());
  }
</script>
Run Code Online (Sandbox Code Playgroud)

在 src/components/Nav.svelte 里面

<div class="g-signin2" data-onsuccess="onSignIn" data-theme="dark"></div>
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常,因为 onSignIn 可以访问窗口,但似乎我应该能够将它添加到按钮本身所在的 Nav 组件。有没有首选的方法来处理这样的事情?

ran*_*sen 5

如果有人正在寻找类似的东西,我找到了这个 git repo,我可以开始并修改它以满足我的需要github.com/beyonk-adventures/svelte-social-auth