Angular 2 个工商管理硕士

Angular 2 MBAAS

几天来,我一直在努力寻找与 Angular 2(我使用的是 Ionic 2)兼容的 MBAAS。 Parse 正在关闭,所以这对我和我尝试过的其他人(Firebase、Backendless 等)来说并不是一个真正的选择。似乎还没有 Angular 2 SDK。

可能是我不耐烦,但我真的很想现在就开始使用它,但没有像样的 SDK 我做不到。

是的,如果我也真的想要,我可以使用 REST API,但我觉得这会限制应用程序所需的简单推送通知等功能。

所以问题是:有谁知道支持 Angular 2 并且有可用于支持推送通知和数据存储的库的 MBAAS?

编辑:

例如,尝试在 Angular 2 中使用后端 mbaas,我尝试了以下方法:

结构:

 - app
 - app.js
 - backendless.js
 -- pages
 --- home
 ---- home.html
 ---- home.js
 ---- home.scss
 -- theme

app.js

import {App, Platform} from 'ionic-angular';
import {HomePage} from './pages/home/home';
import {Backendless} from 'backendless';

@App({
  template: '<ion-nav [root]="rootPage"></ion-nav>',
  config: {} // http://ionicframework.com/docs/v2/api/config/Config/
})
export class NotOnFileApp {
  static get parameters() {
    return [[Platform]];
  }

  constructor(platform) {
    this.rootPage = HomePage;

    platform.ready().then(() => {
      // The platform is now ready. Note: if this callback fails to fire, follow
      // the Troubleshooting guide for a number of possible solutions:
      //
      // Okay, so the platform is ready and our plugins are available.
      // Here you can do any higher level native things you might need.
      //
      // First, let's hide the keyboard accessory bar (only works natively) since
      // that's a better default:
      //
      // Keyboard.setAccessoryBarVisible(false);
      //
      // For example, we might change the StatusBar color. This one below is
      // good for dark backgrounds and light text:
      // StatusBar.setStyle(StatusBar.LIGHT_CONTENT)

      Backendless.initApp( 'XXXXX', 'XXXXX', 'v1' );

    });
  }
}

这给出了错误:"Cannot read property 'initApp' of undefined" 这表明我没有正确导入 js 库。你能帮忙解释一下为什么会这样吗?

Batch.com 正在为 Firebase

提供推送通知服务

https://batch.com/parse-replacement-with-firebase

因此,经过多次更改、删除、添加和谷歌搜索后,我找到了一种有效的方法。下面是方法。如果这不是正确的方法或有更好的方法,请告诉我。

在使用backendless的例子中,先通过npm安装:

npm install backendless

现在在 app.js 的顶部添加:

import 'backendless';

现在您可以轻松地在该文件中使用它了。例如

Backendless.initApp( 'XXXXX', 'XXXXX', 'v1' );

我猜你必须将它导入到你想使用的每个页面,但不确定那个页面。