在 Angular 应用程序中集成原生 JavaScript 类

2023-12-08

我有一个原生 JavaScript 类:

var Holder = new function(elements) {

    this.elements = elements;

    this.anyFunction() {
        // use of this.elements
    };

};

如何以 Angular 方式使用它?例如,如果我想使用:

.controller('AnyController', ['Holder',
function (Holder) {

    var elements = [
        {id: 1, label: 'foo'},
        {id: 2, label: 'bar'}
    ];

    $scope.holder = new Holder(elements);

}])

我应该如何注册我的Holder然后上课?有哪些选项(如果有)?

并行的是不是that bad在 Angular 应用程序中使用本机 JavaScript 类(即不将其集成到框架中)?


你可以用工厂返回一个类

    .factory('Holder', function() {
        return (function (){
            this.foo = foo;
            this.bar = bar;
        });
    });

现在就可以使用它

.controller('AnyController', ['Holder', function (Holder) {
    var holder = new Holder();
}]);

EDIT Use a factory代替service,正如评论中所建议的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Angular 应用程序中集成原生 JavaScript 类 的相关文章

随机推荐