Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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
在angularjs+typescript中注入breeze服务_Angularjs_Typescript_Breeze_Angularjs Service - Fatal编程技术网

在angularjs+typescript中注入breeze服务

在angularjs+typescript中注入breeze服务,angularjs,typescript,breeze,angularjs-service,Angularjs,Typescript,Breeze,Angularjs Service,这是微风。?没有显示任何内容,因为private breeze没有您可以看到的声明类型 微风。?显示所有内容,因为它引用了中声明的模块 breeze和this.breeze是同一个对象 我这里的问题是,如何使用AngularJs标准注入,就像我在最后一行将breeze服务注入元数据服务时所做的那样,然后当我编码元数据类时,如何使用this.breeze并具有IntelliSense等TypeScript优势 最后,出于IntelliSense的目的,this.breeze可能被视为breeze模

这是微风。?没有显示任何内容,因为private breeze没有您可以看到的声明类型

微风。?显示所有内容,因为它引用了中声明的模块

breeze和this.breeze是同一个对象

我这里的问题是,如何使用AngularJs标准注入,就像我在最后一行将breeze服务注入元数据服务时所做的那样,然后当我编码元数据类时,如何使用this.breeze并具有IntelliSense等TypeScript优势

最后,出于IntelliSense的目的,this.breeze可能被视为breeze模块,或者以其他方式实现此场景?

您可以使用typeof来表示模块的类型。在本例中,由于您有一个名为breeze的参数,因此需要重命名该参数或为全局符号breeze创建导入,以便您可以实际引用它:

class Metadata {

    constructor(private breeze) {

        this.breeze.? // Ctrl+Space Nothing 

        breeze.? // Ctrl+Space Everything

    }

}

angular.module('bs.breeze', ['breeze.angular']);

// do nothing but you could
// create the window.breeze object
angular.module('bs.breeze').run(['breeze', function (breeze) { }]);


//get breeze metadata by hand
angular.module("bs.breeze").factory('metadata', [ 'breeze', (breeze) => new Metadata(breeze)]);
您可以使用typeof来引用模块的类型。在本例中,由于您有一个名为breeze的参数,因此需要重命名该参数或为全局符号breeze创建导入,以便您可以实际引用它:

class Metadata {

    constructor(private breeze) {

        this.breeze.? // Ctrl+Space Nothing 

        breeze.? // Ctrl+Space Everything

    }

}

angular.module('bs.breeze', ['breeze.angular']);

// do nothing but you could
// create the window.breeze object
angular.module('bs.breeze').run(['breeze', function (breeze) { }]);


//get breeze metadata by hand
angular.module("bs.breeze").factory('metadata', [ 'breeze', (breeze) => new Metadata(breeze)]);