在 Meteor 中加载 Dropbox dropin.js 脚本

Loading Dropbox dropin.js script in Meteor

本文关键字:dropin js 脚本 Dropbox 加载 Meteor      更新时间:2023-09-26

我需要在 Meteor 项目中加载此脚本: <script type="text/javascript" src="https://www.dropbox.com/static/api/2/dropins.js" id="dropboxjs" data-app-key="my-api-key"></script>

我首先尝试在 Template.Image.onRendered 上执行$('head').append('<script type="text/javascript" src="https://www.dropbox.com/static/api/2/dropins.js" id="dropboxjs" data-app-key="my-api-key"></script>'),但问题是每次渲染模板时都会加载库,并给出此错误:dropins.js included more than once

我还查看了 wait-on-lib 包,https://github.com/DerMambo/wait-on-lib,但我无法将数据应用程序密钥或 id 传递给路由器等待函数。

您对如何加载此脚本有什么建议吗?

我从未使用过 dropbox sdk,但也许这对您有所帮助或为此提供一些想法。

if(window.Dropbox){
    // Nice, is already loaded
}
else {
    $("head")
        .append('<script type="text/javascript" src="https://www.dropbox.com/static/api/2/dropins.js" id="dropboxjs" data-app-key="your-api-key"></script>');
    var head = document.getElementsByTagName('head')[0];
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = 'https://www.dropbox.com/static/api/2/dropins.js';
    head.appendChild(script);
    script.onload = function(){
        //whatever, I Want It All!
    };
}

您可以在Template.template_name.onCreated代码块中添加此内容。