我刚刚开始使用AngularJs。
我需要使用SunCalc模块来为我的应用计算太阳位置。
我不知道如何将文件集成到应用程序中以及如何在尊重AngularJs结构的同时访问他的不同功能。文件放在哪里?如何调用函数?等等...

这里是一个链接,您可以快速了解SunCalc模块的结构,并希望能对我有所帮助。
https://github.com/mourner/suncalc/blob/master/suncalc.js

非常感谢你的帮助!

最佳答案

由于该库通过一系列方法公开了全局SunCalc对象,因此您只需将这个lib包装到自定义服务中即可。

app.factory('SunCalc', function() {
    return window.SunCalc;
});


然后可以在控制器中像这样使用它:

app.controller('MainCtrl', function($scope, SunCalc) {
    $scope.position = SunCalc.getTimes(new Date(), 52.3667, 4.9000);
});


在这种情况下,您可以将自己的方法添加到此服务中,而不会弄乱原始库。

请注意,从技术上讲,您可以使用可全局访问的SunCalc,而无需为此创建其他服务。但是,使用服务具有许多优势:您可以轻松地对其进行重命名,它可以使用原始库API外观,使用易于出错的全局变量等。

还请记住在Angular脚本标签之前包含脚本标签。

演示:http://plnkr.co/edit/rbATLGfGE2kx32tmEEoX?p=preview

关于javascript - 将外部文件与AngularJs集成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29500370/

10-13 01:57