Как ударить / поглотить пост и получить API в React Native с помощью Ignite Bowser 2 Boilerplate. (Mobx State Stree, введите скрипт) - PullRequest
0 голосов
/ 10 октября 2019

Я новичок в React Native, предоставьте ссылку на Github или ваш собственный код для справки. Считай меня новичком в RN.

Я нашел очень менее открытую поддержку RN, дерева состояний Mobx, Ignite и всего, поэтому не просто публиковать и получать ссылку на API, если вы найдете что-нибудь полезное, связанное с этими выше-упомянутые темы, не стесняйтесь поделиться.

Заранее спасибо.

1 Ответ

0 голосов
/ 20 октября 2019

Mobx State Tree, с Ignite Bowler у вас будет файл api.ts, в котором вы можете указать вызовы API.

 async getUser(userToken: string): Promise<Types.GetUserResult> {
// make the api call

const response: ApiResponse<any> = await this.apisauce.post(`api/v1/sales/login?authCode=${userToken}`)

if (!response.ok) {
  const problem = getGeneralApiProblem(response)
  if (problem) return problem
}


// transform the data into the format we are expecting
try {
  try {
    const rawUser = response.data
    console.log('rawUser'+ rawUser)
    const user: UserSnapshot = convertRawUserToUserStore(rawUser)
    return { kind: "ok", user }
    console.log({ user })
  } catch (e) {
    __DEV__ && console.tron.log(e.message)
    return { kind: "bad-data" }
  }
} catch {
  return { kind: "bad-data" }
}
}

Обратите внимание, что мы будем получать пользовательские данные из этого вызова API, вы можете заметить, чтоесть UserSnapshot, который принадлежит модели пользователя, Snapshot автоматически сохранит данные, вам не нужно хранилище Aysnc для сохранения или извлечения данных.

...