首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在react-native-firebase中使用Headless JS函数中的钩子?

如何在react-native-firebase中使用Headless JS函数中的钩子?
EN

Stack Overflow用户
提问于 2019-08-29 18:28:19
回答 2查看 265关注 0票数 1

当我在后台收到通知时,我尝试用apollo-hooks和react-native-firebase从服务器获取数据。

我创建了新的函数和registerHeadlessTask。

但它发生在Hooks can only be called inside the body of a function component.

react-native: 0.59.8 react-native-firebase: 5.5.6 react-apollo-hooks: 0.4.5

我尝试使用react-apollo-hooks获取数据,但出现错误。而且,我得到了另一个上下文的自定义钩子,它也发生了Hooks can only be called inside the body of a function component.错误。

index.js:

代码语言:javascript
复制
...
AppRegistry.registerHeadlessTask('RNFirebaseBackgroundMessage', () => bgMessage)

bgMessage.js:

代码语言:javascript
复制
export const bgMessage = message => {
  const [mValue, setMValue] = useTest()
  const {
    data: { type },
  } = message

  switch (type) {
    case 'Installing': {
      setMValue(type)
      displayedNotification(message, FCM_MESSAGES_STATUS.Message)
      return Promise.resolve(message)
    }
    default:
      displayedNotification(message, FCM_MESSAGES_STATUS.Message)
      return Promise.resolve(message)
  }
}

export const useTest = () => {
  const [mValue, setMValue] = useState(null)
  return [mValue, setMValue]
}

这里有没有使用钩子的方法?

EN

回答 2

Stack Overflow用户

发布于 2019-08-29 21:57:02

你可以试试这个。

bgMessage.js

代码语言:javascript
复制
import React, { useState } from 'react';
...
export default async (message) => {
  const [mValue, setMValue] = useState('')
  const {
    data: { type },
  } = message

  switch (type) {
    case 'Installing': {
      setMValue(type)
      displayedNotification(message, FCM_MESSAGES_STATUS.Message)
      return Promise.resolve(message)
    }
    default:
      displayedNotification(message, FCM_MESSAGES_STATUS.Message)
      return Promise.resolve(message)
  }
}
票数 0
EN

Stack Overflow用户

发布于 2021-01-15 15:19:57

Headless JS中不允许使用钩子。根据对这个问题的回答,issue钩子被视为UI元素,因此不允许在Headless JS中使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57708197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档