Объект не является функцией - IONIC 3 Facebook Войти - PullRequest
1 голос
/ 10 мая 2019

Я работаю над приложением IONIC 3 и пытаюсь войти в систему с помощью Facebook. Я сделал кнопку, где я запускаю функцию registerUser() для события click. Я прекрасно создал приложение на консоли разработчика Facebook и установил плагин Facebook через эту ссылку. Я следовал за документацией, и она работала отлично.

Я импортировал import { Facebook } from '@ionic-native/facebook/ngx'; в файл app.module.ts и назначил Facebook в поставщиках. А также импортировано import { Facebook, FacebookLoginResponse } from '@ionic-native/facebook/ngx'; в signup.ts.

Проблема в том, что это приложение было построено с использованием IONIC 3, и теперь, когда я переключаюсь на документацию IONIC 3 и, выполняя поиск по ссылке facebook, я перенаправляюсь на * 1016. * эта страница, на которой я следовал, чтобы установить плагины и т. д. Когда я запускаю приложение, запускается функция registerUser(), которая возвращает ошибку, которая говорит:

ERROR TypeError: Object(...) is not a function
    at Facebook.login (index.js:62)
    at SignupPage.webpackJsonp.186.SignupPage.registerUser (signup.ts:83)
    at Object.eval [as handleEvent] (SignupPage.html:78)
    at handleEvent (core.js:13589)
    at callWithDebugContext (core.js:15098)
    at Object.debugHandleEvent [as handleEvent] (core.js:14685)
    at dispatchEvent (core.js:10004)
    at core.js:10629
    at HTMLButtonElement.<anonymous> (platform-browser.js:2628)
    at t.invokeTask (polyfills.js:3)

Код Facebook

export class SignupPage {
  constructor(
    public facebook: Facebook
  ) {}
  
  //Register User
  registerUser() {
    this.facebook.login(['public_profile', 'user_friends', 'email'])
      .then((res: FacebookLoginResponse) => {
        console.log('Logged into Facebook!', res)
      })
      .catch(e => {
        console.log('Error logging into Facebook', e)
      });
  }
}

Кнопка IONIC

      <ion-item id="border-none">
        <button ion-button block id="login-button" (click)="registerUser()">Create Account</button>
      </ion-item>

Я искал разные решения, даже здесь, но ничего не помогло.

1 Ответ

2 голосов
/ 10 мая 2019

/ ngx продление для ионного 4 и далее, оно не будет работать для ионного 3 и выбросит это

TypeError: Object (...) не является функцией

, поэтомуЯ предлагаю вам пойти с документами V3 и реализовать это для ионного проекта 3 https://ionicframework.com/docs/v3/native/facebook/

...