【问题标题】:Calling a TypeScript function from a JavaScript function从 JavaScript 函数调用 TypeScript 函数
【发布时间】:2018-04-11 18:38:13
【问题描述】:

在文件app-component.html上有一个按钮:

<button type="button" onclick="confirmChanges()">Save Changes</button>

confirmChanges 调用位于我的index.html 文件中的javascript 函数:

<script>
    function confirmChanges(){
      var optionSelected = confirm('Are you sure?');
      if(optionSelected == true){
        alert('Changes were applied sucessfully!');
        updateAddress();
      } else{
        alert('You discarded the changes!');
      }
    } 
  </script>

updateAddress() 函数在我的app-component.ts 文件中。我想知道如何在不获取Uncaught ReferenceError 的情况下从 javascript 函数调用打字稿函数。谢谢。

【问题讨论】:

标签: javascript angular typescript referenceerror


【解决方案1】:

可以,只要您的打字稿在 Javascript 中正确编译,并且您的函数在全局范围内导出。

但我不得不说,在很多方面这样做似乎是错误的。首先在全局范围内公开某些东西绝不是一个好主意。其次,我不明白您为什么要在 Angular 应用程序中编写纯 JavaScript 脚本。

但是,是的,从技术上讲,你可以做你想做的事,尽管我强烈建议不要这样做。

希望有帮助

【讨论】:

  • 很难对低于标准的问题给出有用的答案。这更像是冗长的评论而不是回答。它没有回答问题。
  • 谢谢你的回答,但你能给出我应该怎么做的建议吗?!
【解决方案2】:

相信你会在这里找到答案。

Uncaught ReferenceError: <function> is not defined at HTMLButtonElement.onclick

简短的回答是您需要将其添加到全局范围。例如,将其添加到 index.html 中,它应该会触发。但我建议你将它添加到你的 .ts 文件中并重写函数

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 2020-09-16
    • 2023-04-07
    • 1970-01-01
    • 2011-07-01
    • 1970-01-01
    相关资源
    最近更新 更多