小编Wil*_*ior的帖子

如何使用选项卡导航器将道具传递给 Screen 组件?

这是我在 StackOverflow 上的第一篇文章,如果我没有遵循正确的格式,我深表歉意。

我正在构建我的第一个应用程序,tab navigator from React Navigation v 5.x并且在将道具从一个屏幕传递到另一个屏幕时遇到了一个大问题

我想要实现的是:

  1. 在我的一个屏幕中更改数据列表。
  2. 让这些更改影响另一个屏幕上发生的事情。

我已经尝试过这个(我没有设置道具传递下去),这个(react-navigation 的弃用版本)和这个(react-navigation 的旧版本)。

和 Redux,但当前版本的 React 导航没有可用的示例。

我已经对此束手无策了,真的需要逐步了解如何实现这一目标。这是我想要做的粗略草图:

在此处输入图片说明

我想到的方法是通过回调将父状态作为道具发送下来,但是我找不到通过最新版本的反应导航中的屏幕组件发送道具的方法......

这是我的导航设置:

const Tab = createBottomTabNavigator()

export default class MyApp extends Component{

    constructor(props) {
        super(props);
    }

    render(){
        return (
            <NavigationContainer>
                <Tab.Navigator 
                    screenOptions={({ route }) => ({
                        tabBarIcon: ({ focused, color, size }) => {
                            let iconName;

                            if (route.name === 'My tests') {
                                iconName = focused ? 'ios-list-box' : 'ios-list';
                            } else …
Run Code Online (Sandbox Code Playgroud)

parameter-passing reactjs react-native react-redux react-props

25
推荐指数
4
解决办法
2万
查看次数

最小化 IOS 应用程序时,后台处理在几秒钟后被终止

介绍

\n

我用 制作了一个VOIP 拨号器应用程序react-native。我正在使用react-native-callkeep在接到电话时向用户显示默认的IOS呼叫屏幕(在后台和前台),并且我正在使用react-native-push-notification弹出本地通知当接到电话时。

\n

问题

\n

当我最小化应用程序(使用主页按钮)并且应用程序收到呼叫时,它不会显示本地通知或呼叫屏幕。\n但是,如果在最小化操作之后立即接到呼叫,则屏幕和通知出现。

\n

对所发生情况的技术解释

\n

阅读日志,我发现 IOS 在打印以下行时终止了我的应用程序后台处理:

\n

15:08:23.085311-0300 symptomsd com.vmaxtelecom.vmaxfone: Foreground: false

\n

此后,前景或背景都不起作用

\n

代码解释

\n

也许问题不在于react-native-callkeep或react-native-push-notification本身(因为它们按预期工作)。我认为这是 IOS 本身的问题。

\n

我发现这个线程准确地定义了我身上发生的事情。

\n

我启用的功能

\n

在此输入图像描述

\n

我正在使用什么

\n

react-native version 0.61.5

\n

Xcode version 11.5 (11E608c) on a MacOS 10.15.5 Catalina

\n

IOS 13.4.1 on a Iphone 8

\n

I\'m using a release version of my project (The debug …

xcode objective-c ios react-native react-native-ios

5
推荐指数
0
解决办法
1万
查看次数

Apple VOIP 推送通知服务器

因此,我正在开发一个IOS VOIP 应用程序,并发现我需要使用推送通知服务器来使我的应用程序在后台工作以接收来电等。

我搜索后没有找到任何关于如何设置、开发、使用、查找推送通知服务器/网关的信息

我找到了一些付费服务器,但对我没有任何帮助,因为我现在无法付款。

我很抱歉写了一个完全由文本组成的问题,没有代码,但现在没有代码可以使用。

是的,我阅读了文档、文章等,但他们只是谈论“设置你的服务器并向 apns 发送推送”,对于我应该使用什么或如何设置服务器没有任何有用的信息。

这是我已经发现的:

Mizu VOIP推送网关

如何创建可以接收 VoIP 推送通知的本机 iOS 应用程序

会话Talk推送网关

Mizu VOIP 推送通知

推送通知文档

如果不存在推送通知服务器/网关的非付费替代方案,是否可以通过最新的 IOS 更改来解决此问题?(我在这里找到了类似 Zoiper 团队所说的解决方法)

提前致谢!

[编辑]

解决方案是使用 Flexisip 代理服务器。

push-notification apple-push-notifications ios pushkit

5
推荐指数
0
解决办法
1万
查看次数

axios autohorization 标头/CORS 错误

我正在使用与 axios 的反应来获取一些信息。我正在向 auth 用户发送 JWT 令牌,并在控制台浏览器中收到响应

“从源'http://localhost:3000' 访问 XMLHttpRequest at 'https://beer-tonight.herokuapp.com/beer/getBeerStatus' 已被 CORS 策略阻止:Access 不允许请求标头字段授权-预检响应中的 Control-Allow-Headers。”

这是我的代码:

componentWillMount(){

    let token = localStorage.getItem('token');


    axios.get('https://beer-tonight.herokuapp.com/beer/getBeerStatus', {headers: {Authorization : 'Bearer ' + token}}).then(
    result => {
        console.log('yey');
    });
}
Run Code Online (Sandbox Code Playgroud)

错误:

在此处输入图片说明

当我使用 POSTMAN 时,我得到了正确的答案。

邮递员输入:

在此处输入图片说明

ps我已经添加了:

app.use((req, res,next)=>{
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorisation');
next();
Run Code Online (Sandbox Code Playgroud)

rest node.js reactjs react-native axios

3
推荐指数
1
解决办法
9990
查看次数

在 React(ThreeJS) 中使用 GLTFLoader 时应定义具有优化信息的 Vite 错误

我使用vite搭建了一个react环境。当我从模块导入 GLTFLoader 时,vite 命令行提到:

Vite错误,/node_modules/.vite/deps/third_examples_jsm_loaders_GLTFLoader.js?v=9d4ee121应该定义优化信息

这是我的代码:

import * as Three from "three"
import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader'

[...]

const gltfLoader = new GLTFLoader()
gltfLoader.setPath('public/')

gltfLoader.load('000.hdr', gltf => {
    gltf.scene.scale.set(0.2,0.2,0.2)
    scenes.add(gltf.scene)
})
Run Code Online (Sandbox Code Playgroud)

这是错误消息: 在此输入图像描述

three.js reactjs vite

3
推荐指数
1
解决办法
8614
查看次数