使用React Native NativeBase Material Design,OnPress事件处理程序无法正常工作

时间:2017-07-18 15:24:45

标签: react-native javascript-events native-base

我正在关注this document将材质设计添加到我的本机应用中。我喜欢点击按钮时发生的涟漪效应。但是,我正在努力让它与OnPress处理程序一起工作。在下面的代码中,如果我只是在没有navigate('Login');的情况下编写setTimeout(),我就看不到涟漪效应了。但是,如果我包含setTimeout,即使延迟为0,我也会看到涟漪效应。我觉得有一些关于事件处理程序的基本知识我还不了解。

import React, { Component } from 'react';
import { Button, Container, Content, StyleProvider, Text, View } from 'native-base';

import getTheme from '../../../native-base-theme/components';
import material from '../../../native-base-theme/variables/material';

class Welcome extends Component {

  render() {
    const { navigate } = this.props.navigation;
    return (
      <StyleProvider style={getTheme(material)}>
        <Container>
          <Content>
            <View>
              <Button
                onPress={() => {
                  setTimeout(() => {
                    navigate('Login');
                  }, 0);
                }}
                block
              >
                <Text>Continue</Text>
              </Button>
            </View>
          </Content>
        </Container>
      </StyleProvider>
    );
  }
}

export default Welcome;

0 个答案:

没有答案