javascript - 如何将外部 Javascript 库加载到 Angular 4 组件中

标签 javascript angular square-connect

我有一个问题,我需要使用特定的第 3 方库来生成随机数以使用 square connect api。我很难找到如何加载外部 javascript 库,因为它们没有我可以像往常一样加载的 node_module。我所说的外部图书馆是这样的 <script src="https://js.squareup.com/v2/paymentform " type="text/javascript">我还没有找到将它加载到我的应用程序中以便我可以使用它的好方法。关于如何解决这个问题的任何想法?

最佳答案

我用过的几个选项:

  1. 全局脚本使用 angular-cli

    "scripts": [
       "global-script.js",
       { "input": "lazy-script.js", "lazy": true },
       { "input": "pre-rename-script.js", "output": "renamed-script" },
    ]
    
  2. 在特定模块中要求

    import { NgModule } from '@angular/core';
    ...
    require('chart.js');
    require('../../libs/chartjs-plugin-annotation');
    ...
    
  3. 在运行时根据某些条件添加一个全局脚本

    if (this.usesCKEditor(permissions) && !window['CKEDITOR']) {
        const url = '//cdn.ckeditor.com/4.7.3/full/ckeditor.js';
        const script = document.createElement('script');
        script.type = 'text/javascript';
        script.src = url;
        document.body.appendChild(script);
    }
    // must check if the script has loaded before using it
    

关于javascript - 如何将外部 Javascript 库加载到 Angular 4 组件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48026662/

相关文章:

JavaScript 格式化 : must braces be on the same line as the if/function/etc keyword?

angular - Ionic Capacitor Camera,生成完整质量图像并在不生成 Base64 和 DataUri 的情况下显示它

Angular 4 - HTTP删除不起作用

angular - 如何将结构化数据转化为可观察数据?

asp.net - 我可以在不使用 SqPaymentForm 的情况下请求 Card_Nonce 吗?

square-connect - 我们可以通过 Square Connect API 搜索链接到付款 ID 的订单 ID 吗?

javascript - 您如何在可编辑的 div 上录制和回放编辑事件?

javascript - 无法使用 inAppBrowser cordova 在 android 中打开 pdf url

c# - 在 asp.net + jquery 中实现自动注销 + 警告?

ios - 是否可以使用非 HTTPS URL 作为连接到 Square 的 Web 应用程序的 Web 回调 URL?