Javascript Vue如何解决未捕获的语法错误:函数语句需要函数名

Javascript Vue如何解决未捕获的语法错误:函数语句需要函数名,javascript,node.js,vue.js,vue-component,Javascript,Node.js,Vue.js,Vue Component,我正在尝试创建一个简单的web应用程序,通过电报进行身份验证。Telegram有自己的带有回调的小部件,它可以在登录后返回用户数据。问题出在脚本属性“dataonauth”中,在这里,您传递了成功验证后要执行的回调 (-小部件文档,如果需要) 要在您想要的位置找到“登录”按钮,您只需粘贴Telegram的widget generator提供的脚本,但由于我无法在组件模板中粘贴脚本标记(vue不会编译它,只返回错误),所以我选择创建脚本元素添加所需的属性并将其附加到mounted()中 这是我的组

我正在尝试创建一个简单的web应用程序,通过电报进行身份验证。Telegram有自己的带有回调的小部件,它可以在登录后返回用户数据。问题出在脚本属性“dataonauth”中,在这里,您传递了成功验证后要执行的回调

(-小部件文档,如果需要)

要在您想要的位置找到“登录”按钮,您只需粘贴Telegram的widget generator提供的脚本,但由于我无法在组件模板中粘贴脚本标记(vue不会编译它,只返回错误),所以我选择创建脚本元素添加所需的属性并将其附加到mounted()中

这是我的组件代码

<template>
  <header>
      <div class="auth" id="telegramAuth">
      </div>
  </header>
</template>

<script>
export default {
  name: "Header",
  data: () => ({}),
  mounted() {
    let telegramAuth = document.createElement("script");
    telegramAuth.setAttribute("async", "");
    telegramAuth.setAttribute(
      "src",
      "https://telegram.org/js/telegram-widget.js?7"
    );

    telegramAuth.setAttribute("data-userpic", "false");
    telegramAuth.setAttribute("data-telegram-login", "t_adv_bot");
    telegramAuth.setAttribute("data-size", "large");
    telegramAuth.setAttribute("data-onauth", this.loginWithTelegram);
    telegramAuth.setAttribute("data-request-access", "write");
    document.querySelector("#telegramAuth").appendChild(telegramAuth);
  },
  methods: {
    loginWithTelegram: function onTelegramAuth(user) {
        console.log(user);
    }
  }
};
</script>

导出默认值{
名称:“标题”,
数据:()=>({}),
安装的(){
让TelegrameAuth=document.createElement(“脚本”);
TelegrameAuth.setAttribute(“异步”和“”);
电报auth.setAttribute(
“src”,
"https://telegram.org/js/telegram-widget.js?7"
);
telegramAuth.setAttribute(“数据用户pic”、“false”);
telegramAuth.setAttribute(“数据电报登录”、“t_adv_bot”);
telegramAuth.setAttribute(“数据大小”、“大”);
telegramAuth.setAttribute(“数据onauth”,this.loginWithTelegrame);
telegramAuth.setAttribute(“数据请求访问”、“写入”);
文件查询选择器(“电报授权”).appendChild(电报授权);
},
方法:{
使用电报登录:函数onTelegramAuth(用户){
console.log(用户);
}
}
};
但当我尝试这样做时,我得到了未捕获的SyntaxError:函数语句需要函数名。
我不知道怎么解决它。提前感谢并为我糟糕的英语感到抱歉

您的
auth上的数据
将具有字符串值
函数onTelegramAuth(用户){console.log(用户);}
。。。文档中的示例是
onTelegramAuth(user)
-您可以看到差异非常显著感谢您的帮助,我发现问题出在不必要的“函数”中,但我完全按照上面所写的那样做,它对我不起作用。错误是一样的。我想我可以通过将函数保存为字符串来解决这个问题,但是你有没有其他的方法来解决这个问题呢。使用.toString()将函数解析为字符串也不是一个好主意,因为这是我在函数(){[native code]}之后得到的结果,它或者没有函数名。
  methods: {
    loginWithTelegram(user) {
     console.log(user);
    }
  }