我有一个AngularJS Singple页面应用程序,其中配置了controller.js文件。在应用程序的某些时刻,我正在进行数据库调用。要将检索到的XML转换为JSON,我使用外部.js,它是名为x2js的API的一部分。
我想在控制器中引用这个外部JavaScript文件,所以我可以调用JavaScript类的函数。引用主index.html文件中的文件由于某种原因没有工作...知道如何在控制器中引用外部.js文件吗?
Mayby值得一提,但我使用的是打字稿文件而不是常规的JavaScript文件...不知道这是否会改变这种情况?
我制作了外部.js文件的pastebin(x2js.js,这不是打字稿): http://pastebin.com/p80Akp6s
当我在controller.ts中调用以下语句时:
var xml2jsonConverter = new x2js({ arrayAccessForm: "property" });
它给出了一个错误语法高亮,说明指定的参数不是有效的。但是,当我在index.html内的<script>
- 标记之间添加此代码时,它不会给出任何错误指示,并且编译得很好。
在这里你可以看到我的index.html页面。我插入控制器和外部.js。从脚本标签调用它可以正常工作。 http://pastebin.com/WpXZRSZV
controller.ts相当大,除了致电之外我什么也没做。
var xml2jsonConverter = new X2JS({ arrayAccessForm: "property" });
我收到的错误消息是:
Supplied parameters do not match any signature of call target.
和
Only a void function can be called with the 'new' keyword
答案 0 :(得分:0)
使用$ window
//outside of angular
function functionName() {
var num = 0
}
//inside controller
angular.module('app',[])
.controller('mainController',function ($scope,$window) {
$scope.number = $window.num
})