Как начать получать с приставкой при запуске приложения? - PullRequest
1 голос
/ 06 марта 2019

после установки простого счетчика для уведомлений. Я хотел бы получить уведомления на старте приложения, чтобы показать, сколько уведомлений получено.

вот конфигурация: Редуктор:

index.js

import { combineReducers } from "redux";
import posts from "./posts";
import filteredPosts from "./filteredPosts";
import notifications from "./notifications";

export default combineReducers({
  posts,
  filteredPosts,
  notifications
});

notification.js

import * as types from "../actions/types";
const initialState = [];

export default (state = initialState, action) => {
  switch (action.type) {
    case types.LOAD_NOTIFICATIONS:
      return action.notifications;
    default:
      return state;
  }
};

действия

type.js

export const FILTERED_POST = "FILTERED_POST";
export const LOAD_POSTS = "LOAD_POSTS";
export const LOAD_NOTIFICATIONS = "LOAD_NOTIFICATIONS";

notification.js

import * as types from "./types";
import { fetchNotifications } from "../service/";

export const getNotifications = auth_token => dispatch =>
  fetchNotifications(auth_token)
    .then(res => {
      return res.json();
    })
    .then(data => {
      dispatch({
        type: types.LOAD_NOTIFICATIONS,
        notifications: data.notifications
      });
    })
    .catch(err => {
      console.log(err);
    });

А сервис

index.js

import { apiEndpoint } from "./config";

export const fetchPosts = auth_token =>
  fetch(`${apiEndpoint}posts`, {
    method: "GET",
    headers: {
      Accept: "application/json",
      "Content-Type": "application/json",
      Access: auth_token
    }
  });

export const fetchNotifications = auth_token =>
  fetch(`${apiEndpoint}notifications`, {
    method: "GET",
    headers: {
      Accept: "application/json",
      "Content-Type": "application/json",
      Access: auth_token
    }
  });

apiEndpoint - это адрес API Итак, после настройки компонента значка уведомления и добавления его в маршрутизатор приложение загружает сообщения, поскольку это домашний экран, а не уведомления.

чтобы проверить, что я поместил компонент значка уведомления в качестве домашнего экрана для первой загрузки и до сих пор не получаю уведомления. Итак, пожалуйста, кто-нибудь может уточнить, как получить использовать приставку при запуске приложения или до, или сразу после?

export const Logged = createBottomTabNavigator(
  {
    Notification: {
      screen: Notification,
      navigationOptions: {
        tabBarLabel: "Notification",
        tabBarIcon: () => {
          <NotificationIcon />;
        }
      }
    },

1 Ответ

1 голос
/ 06 марта 2019

Ну, есть ряд вещей, которые могут быть неправильными, во-первых, я бы проверил ответ от конечной точки, используя инструмент, подобный почтальон , если ответ - то, что вы ожидаете, то я бы предложил создать корневой компонент, например, AppComponent и внутри него, в вашем componentDidMount вы можете отправить действие getNotifications, используя mapDispatchToProps

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...