首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >引用错误:未用nextjs定义的导航器

引用错误:未用nextjs定义的导航器
EN

Stack Overflow用户
提问于 2020-08-22 13:12:19
回答 2查看 12.7K关注 0票数 7

我的代码是这样的:

从“react”导入React,{ useEffect };

代码语言:javascript
运行
复制
import alanBtn from '@alan-ai/alan-sdk-web';

const alanKey = my key;
const App = () => {
    useEffect(() => {
        alanBtn({
            key: alanKey,
            onCommand: ({ command }) => {
                    alert('This code was executed');
            }
        })
    }, []);
    return (
        <div><h1>Alan AI News Application</h1></div>);
}
export default App;

但我得到的错误是:引用错误:未定义的导航器。怎么修呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-04-03 14:52:12

在使用之前,应该先在windownavigator等浏览器对象中定义useEffect

代码语言:javascript
运行
复制
  const [pageURL, setPageURL] = useState("");
  const [isNativeShare, setNativeShare] = useState(false);
  useEffect(() => {
    setPageURL(window.location.href);
    if (navigator.share) {
      setNativeShare(true);
    }
  }, []);

// Now, use can use pageURL , isNativeShare in code
票数 13
EN

Stack Overflow用户

发布于 2020-08-22 17:44:27

这不是您的Next.js代码的问题,它只是您应该调用alan库的方式。

下面是应该对您有效的解决方案。

代码语言:javascript
运行
复制
import React, { useEffect } from "react";

const alanKey = "my key";
function App() {
useEffect(() => {
   const alanBtn = require("@alan-ai/alan-sdk-web");
   alanBtn({
   key: "myKey",
   rootEl: document.getElementById("alan-btn")
  });
}, []);

return (
 <div>
  <h1>Alan AI News Application</h1>
 </div>
 );
}
export default App;

下面是同一个https://github.com/alan-ai/alan-sdk-web/issues/29#issuecomment-672242925的讨论链接。

希望这能解决你的问题。

编码愉快。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63536562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档