加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJS依赖注入VS ES6导入

发布时间:2020-12-17 07:25:38 所属栏目:安全 来源:网络整理
导读:我最近使用AngularJS和ES6创建了一个新项目.这是我的第一个ES6项目,我对它的import语句非常满意.以前我必须使用AngularJS依赖注入才能在我的应用程序逻辑中使用不同的服务.现在我可以使用ES6导入轻松导入不同的服务.问题是我是否允许编写非角度服务并使用imp
我最近使用AngularJS和ES6创建了一个新项目.这是我的第一个ES6项目,我对它的import语句非常满意.以前我必须使用AngularJS依赖注入才能在我的应用程序逻辑中使用不同的服务.现在我可以使用ES6导入轻松导入不同的服务.问题是我是否允许编写非角度服务并使用import导入它们,或者我必须以角度服务(或工厂)格式编写它们,并使用依赖注入导入?
首先,Angular dependency injection和ES6 import是两个不同的概念.

角度依赖注入是一种为组件提供依赖关系而不是在组件内对其进行硬编码的方法.这可以减轻组件定位依赖关系的负担,并使依赖关系可配置.

ES6导入是一个javascript功能,用于导入由另一个模块导出的绑定.

您可以导入一个模块,该模块可以是您的服??务类,并将其添加为角度服务.如果您正在编写“非角度”服务,请确保它是可导出的ES6类.您不能直接使用ES6类作为依赖项,因为角度需要在DI之前进行角度调整.

我-service.service.js

export default class MyService {
  constructor() {
    this.items = [''];
  }

  getItem() {
    return this.items;
  }
}

MyService.$inject = ['SomeOtherService'];

在index.js中

import angular from 'angular';
import MyService from './my-service.service';

angular.module('myApp')
  .service('MyService',MyService);

这是ES6可以使用AngularJS依赖注入的一种方式.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读