在Angular 2中使用第三方库(parse.com)

时间:2016-01-19 21:04:26

标签: javascript angular parse-platform

我正在学习Angular 2并且我已经遵循了Egghead的教程,但我对Angular的所有内容都很陌生。

现在我想做更先进的事情并开始使用Parse.com和Angular 2。 通常我会通过<script src="//www.parsecdn.com/js/parse-1.6.2.min.js"></script>在index.html页面中包含parse.com库,但是我想通过Angular 2编写一个ParseService,我可以使用它来管理后端。

我似乎无法在我想写的服务中找到如何包含和使用Parse。 这是我想用来测试导入的非常基本的代码。

import {Injectable} from 'angular2/core';
import {Parse} from '.../...'; // <-- This is what I want to do

@Injectable()
export class ParseService {
    constructor() {
        console.log('Creating ParseService');

        Parse.initialize('', '');
    }
}

我需要在页面顶部包含某种导入,包括Parse,但是我应该从哪里获得必要的库?我已经尝试通过npm但没有成功。有人试过这个吗?

3 个答案:

答案 0 :(得分:5)

uksz是对的。您必须首先通过命令

安装组件
npm install --save parse

之后,您可以通过键入

将其导入为任何其他组件
import {Parse} from 'parse';

有关详细信息,请查看此链接https://forum.ionicframework.com/t/how-to-require-xyz-in-ionic2-angular2/42042

希望它有所帮助;)

已更新

随着角度的新版本,这种方法停止工作。这是我的新步骤:如何在Angular2中使用Parse库

  1. 将Parse组件安装到项目

    npm install parse --save
    
  2. 安装解析类型

    npm install @types/parse --save
    
  3. 导入解析模块

    const Parse: any = require('parse');
    
  4. 使用Parse模块

    Parse.initialize("key");
    ...
    
  5. 使用intellisense享受它;)

答案 1 :(得分:0)

您可以在Angular2

中使用 OpaqueToken 来实现

<强> 1 即可。在单独的ts文件中创建用于在下面查找实例的令牌。

import { OpaqueToken } from '@angular/core'

export let name_of_The_Token = new OpaqueToken('name_Of_The_Window_Object');

2。 App.module 中,您需要导入并声明一个变量,这是您的窗口对象的名称令牌作为angular2服务,以便您可以在组件中使用该javascript文件中的属性,方法。

import { name_of_The_Token } from '/* file_Path */';
declare let name_Of_The_Window_Object : any;  //below your import statements

第3步:注入模块的提供者数组。

{ provide : name_of_The_Token , useValue : name_Of_The_Window_Object }

在组件中使用此令牌的指南

  1. 导入令牌就像任何其他服务和@Inject from angular-core

    一样
     import { name_of_The_Token } from '/* file_Path */';
     import { Inject } from '@angular/core';
    
  2. 在组件的构造函数中

     constructor(@Inject( name_of_The_Token ) private _serviceObject : any )       
    
  3. 组件中的任何位置都可以使用javascript文件的变量和方法

     this._serviceObject.method1()
     this._serviceObject.variable1
     .....
    
  4. 注意:一个缺点是您无法获得intellisense

    克服它: 如果你正在寻找intellisense,你需要将方法和变量包装在一个接口中,并在你的令牌的类型**(而不是任何)**中使用它

    export interface myCustom {
          method1(args): return_Type;
          method2(args): void;
          .....
       }
    

答案 2 :(得分:-1)

您需要做什么,是否需要下载Parse库:

npm install parse

然后,您需要以正确的方式在导入中引用它 - 您需要指定parse.js文件放在哪个文件夹中。