标签: react-native-android

抛出错误时,React-native fetch无法setState

背景

我试图用fetch()我的React Native Component中的函数处理错误的HTTP响应.我使用了这里的代码,建议创建一个模块来处理响应错误.

// ApiUtils.js

var ApiUtils = {  
  checkStatus: function(response) {
    if (response.status >= 200 && response.status < 300) {
      return response;
    } else {
      let error = new Error(response.statusText);
      error.response = response;
      throw error;
    }
  }
};
export { ApiUtils as default };
Run Code Online (Sandbox Code Playgroud)

这是我的组件的代码:

import React, { Component } from 'react';
import {View, Text, StyleSheet, Slider, ListView} from 'react-native';
import GLOBAL from "../../Globals.js"
import ApiUtils from "../utils/ApiUtils.js"

class FetchedList extends Component {
    constructor(props) …
Run Code Online (Sandbox Code Playgroud)

javascript fetch reactjs react-native react-native-android

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

React Native Android:通过 Android Studio 生成签名 APK 不包含 JS Bundle

通过 Android Studio 生成签名 APK 不包括 JS Bundle。我一直在努力在无法正常工作的设备上安装发布版本。最后我启用了 Release 版本的调试,我发现通过 android studio 生成的签名 apk 不包含 js 包。

如何生成包含 js 包的签名 apk?上传到游戏商店。

android android-studio reactjs react-native react-native-android

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

组件应写为纯函数

我有一个本机的android应用程序。我在index.android.js中的组件是无状态的,因此eslint抛出错误“组件应作为纯函数编写”。如果我将组件设为纯函数,该如何注册应用程序或实例化应该如何?

pure-function eslint react-native react-native-android

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

如何在React-Native的事件中调用两个函数?

我会尝试:Source(React-Native事件中的两个函数

onValueChange={(selected) => { this.setState({selected}); this.state.eventOnChange(); }}

但这是行不通的

那执行第一个功能,但不执行第二个功能。

react-native react-native-android react-native-ios

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

React-native Airbnb-Maps:如何在airbnb地图弹出框中渲染按钮?

我正在尝试使用AirBnb贴图(使用MapView.Markers)渲染一个按钮,我可以使用该按钮重定向到描述页面中的另一个页面(如果选择标记,则弹出框).我不知道如何实现这一目标.

目前我的标记如下:

const markers = [{
  longitude: 8.545592,
  latitude: 47.366465,
  description: "Bike 1",
  title: "Bike 1"
},
{
  longitude: 8.545892,
  latitude: 47.366365,
  description: "Bike 2",
  title: "Bike 2"
}
];
Run Code Online (Sandbox Code Playgroud)

每当我尝试将JSX输入到文本中时,我都会收到NSMutableDictionary cannot be converted to NSString错误.(当我这样做时:

const markers = [{
  longitude: 8.545592,
  latitude: 47.366465,
  description: <Text>Bike1</Text>, //"Bike 1", //<Text> Bike1 </Text>
  title: "Bike 1"
},
{
  longitude: 8.545892,
  latitude: 47.366365,
  description: "Bike 2",
  title: "Bike 2"
}
];
Run Code Online (Sandbox Code Playgroud)

maps react-native airbnb-js-styleguide react-native-android react-native-ios

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

反应本机选择器未显示在Android上

我正在尝试使用Picker组件,它在iOS中显示完全正常,但在Android中却没有显示。我已经检查了关于react native picker的评论未在android显示,但是设置{width: 100}{flex: 1}似乎无法解决问题。

更新:拾纸器在那里,当我点击它所在的区域时可以使用,只是不可见。

我正在使用Expo在我的iPhone和Android上运行测试版本。在iPhone上没问题。只是Android ... Galaxy S8 v7.0牛轧糖

这是我的代码:

import React from 'react';
import {
    StyleSheet,
    Text,
    View,
    Picker,
} from 'react-native';

export default class Home extends React.Component {
    constructor(props){
        super(props);
            this.state = {
            selectedValue: 'Orange'
        }
    }

    render() {
        return (
            <View style={styles.container}>
                <Picker
                    style={styles.picker}
                    selectedValue={this.state.selectedValue}
                    onValueChange={(value) => {this.setState({selectedValue: value})}}
                    itemStyle={styles.pickerItem}
                >
                    <Picker.Item label="Apple" value="Apple" />
                    <Picker.Item label="Orange" value="Orange" />
                    <Picker.Item label="Banana" value="Banana" />
                    <Picker.Item label="Kiwi" …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-android

1
推荐指数
2
解决办法
3764
查看次数

反应导航标题标题被切断

所以基本上我正在学习本地反应。我使用的是react导航包,我只想在我的堆栈导航器上显示一个简单的标题,但标题已切断。堆栈导航标题

这是我的 App.js

import React from 'react';
import { View, Text } from 'react-native';
import { createStackNavigator, createAppContainer} from 'react-navigation'
import HomeScreen from './screens/HomeScreen'
import DetailsScreen from './screens/DetailsScreen'

const RootStack = createStackNavigator(
  {
    Home: HomeScreen,
    Details: DetailsScreen,
  },
  {
    initialRouteName: 'Home'
  }
);

const AppContainer = createAppContainer(RootStack)

export default class App extends React.Component {
  render(){
    return<AppContainer />
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我的HomeScreen.js

import React from 'react'
import {Button, View, Text } from 'react-native'

export default class HomeScreen extends React.Component {

  static …
Run Code Online (Sandbox Code Playgroud)

android react-native react-native-android react-navigation stack-navigator

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

使用react-native创建弹出窗口的简单方法?

目标是通过一种简单干净的实施方式来构建一个类似于YouTube-App中的搜索过滤器的弹出窗口,请参见图片。轻按半透明的边框应关闭弹出窗口。应该从几个屏幕(在嵌套的导航结构内)调用同一弹出窗口,然后将选择返回给相应的屏幕。

在此处输入图片说明

我做了很多搜索和文档阅读,因此似乎有以下四个选择:

  1. 使用Alert窗口并大量修改警报消息,但是此选项不允许我通过单击透明区域来取消。
  2. 使用某些看起来很有前途的,非常像beta的组件react-native-popupwindow也不是一种选择。
  3. 使用modal声称是在封闭视图上方显示内容的简单方法的组件。根据如何在本机模式中调暗背景?然后在模态外部点击以关闭模态(react-native-modal) “,这似乎是一个可能的选择。
  4. 但是,有些人说,您应该宁愿Overlay使用Modal,也只能Modal作为最后的手段

请建议您在现实生活中测试了哪种解决方案。你有什么建议?也许有一个更简单的解决方案?

有关StackOverflow的相关问题:

react-native react-native-android react-native-ios

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

v3中未显示React导航底部标签栏的图标

我最近将react-navigation升级到v3,并运行了我的应用程序,但底部的标签栏图标似乎出现渲染错误。即使标签已渲染,图标也根本不会渲染。我正在使用react-native-vector-icons渲染图标。

我曾尝试在选项卡栏选项中将showIcon属性设置为true,但这也无法解决我的问题。我还尝试将react-navigation降级到v2.x,但这无济于事

const TabNavigatorConfig = {
  navigationOptions: ({ navigation }) => ({
    tabBarIcon: ({ focused }) => {
      const { routeName } = navigation.state;
      let iconName;
      switch (routeName) {
        case 'Batches':
          iconName = 'home';
          break;
        case 'Settings':
          iconName = 'settings';
          break;
        default:
          iconName = 'home';
          break;
      }
      return (
        <Icon
          size={22}
          name={iconName}
          color={focused ? colors.secondary.normal : colors.other.bbIconNormal}
        />
      );
    },
  }),
  animationEnabled: false,
  tabBarPosition: 'bottom',
  swipeEnabled: false,
  backBehavior: 'none',
  tabBarOptions: {
    showIcon: true,
    style: {
      backgroundColor: colors.other.bgNormal,
    },
  },
}; …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-android react-navigation

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

使用行数反应本机文本组件

有没有一种方法可以确定使用行数时文本将被截断吗?一直到处搜寻,没有明确答案。谢谢!

reactjs react-native react-native-android

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