Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular JS和外部库_Javascript_Angularjs - Fatal编程技术网

Javascript Angular JS和外部库

Javascript Angular JS和外部库,javascript,angularjs,Javascript,Angularjs,我有一个第三方JavaScript库(不是Angular),我想从Angular使用它的方法/对象 我知道我可以把一个放到一个有角度的HTML视图中,并在那里使用这些方法,但那真的很难看 否则怎么做呢?把它放在前面,你应该会没事的 <script type="text/javascript" src="braintree.js"> <script type="text/javascript" src="angular.js"> 将其与angular一起使用应该不是问

我有一个第三方JavaScript库(不是Angular),我想从Angular使用它的方法/对象

我知道我可以把一个
放到一个有角度的HTML视图中,并在那里使用这些方法,但那真的很难看


否则怎么做呢?

把它放在前面,你应该会没事的

<script type="text/javascript" src="braintree.js">
<script type="text/javascript" src="angular.js">

将其与angular一起使用应该不是问题

您能创建一个简单问题的Plunker或JSFIDLE吗


如何将两者结合使用的示例答案:

哦,我找到了,只需将其附加到
$窗口即可

如文所述:

SDK将在全局窗口对象上显示为braintree。

因此,从您的控制器(例如),您只需使用
$window.braintree
,就可以从braintree客户端库获得所需的一切

要加载Dropin,您只需使用以下命令:

angular.module('app').controller('YourController', ['$scope', '$window',
    function ($scope, $window) {

        $window.braintree.setup('CLIENTTOKEN', 'dropin', {
            container: 'dropin'
        });

    }
]);

在+1 Cathal之前将库包含在index.html中。此外,那是公共图书馆吗?如果是,考虑检查是否有角模块可用。它是Braintree图书馆(),他们没有角度模块。我试着把它放在其他任何东西之前,但我不知道如何将它注册为Angular Module/Dependency,并在控制器上使用它。好吧,你可以将它包装在Angular Module中,但这样它就不会是全局的。正如Cathal所说,只需在包含Angular之前包含它,您应该很好。提供的链接已更改