react-navigation之动态修改title的内容


Posted in Javascript onSeptember 26, 2018

本文介绍了react-navigation之动态修改title的内容,分享给大家,具体如下:

效果图:

react-navigation之动态修改title的内容

动态修改title内容:

static navigationOptions = {
    title: ({ state }) => `Chat with ${state.params.user}`
  };

ps:`Chat with ${state.params.user}` 这里有个注意的地方,是这个符号·而不是单引号‘

index.android.js

/** 
* Sample React Native App 
* https://github.com/facebook/react-native 
* @flow
 */
import {
  AppRegistry,
}from 'react-native';
import rootApp from './js/rootApp'
AppRegistry.registerComponent('GankProject', () = >rootApp);

rootApp.js:

/**
 * Created by Administrator on 2017/3/31 0031. 
*/
'use strict'import React from 'react';
import {
  AppRegistry,
  Text,
  View,
  Button,
}
from 'react-native';
import {
  StackNavigator
}
from 'react-navigation';
import ChatScreen from './ChatScreen';
class HomeScreen extends React.Component {
  static navigationOptions = {
    title: 'Welcome',
    //设置标题内容  };  
    render() {
      const {
        navigate
      } = this.props.navigation;
      return ( < View > <Text > Hello, Navigation ! </Text>   
      <Button      
    onPress={() => navigate('Chat',{user:'Lucy'})}       
    title="Chat with Lucy"/ > </View> 
   ); 
 }
} 
const SimpleApp = StackNavigator(
{  
 Home: {screen: HomeScreen}, 
  Chat:{screen:ChatScreen}, 
}
); 
export default SimpleApp;

ChatScreen.js:

/**
 * Created by Administrator on 2017/3/31 0031. 
*/
'use strict'
import React,{Component}from 'react';
import {View,Text}from 'react-native';
class ChatScreen extends Component {
  static navigationOptions = {
    title: ({state}) = >`Chat with $ {state.params.user}`
  };
  render() {
    const {params} = this.props.navigation.state;
    return ( < View > <Text > Chat with {
      params.user
    } < /Text>      </View > );
  }
}
export default ChatScreen;

效果2:

react-navigation之动态修改title的内容

/** * Created by Administrator on 2017/3/31 0031. */
'use strict'
import React, { Component}from 'react';
import {View, Text, Button}from 'react-native';
class ChatScreen extends Component {
  static navigationOptions = {
    title: ({
        state
      }) => {
        if (state.params.mode === 'info') {
          return `${state.params.user}'s Contact Info`;
        }
        return `Chat with ${state.params.user}`;
      },
      header: ({state, setParams}) => {
        // The navigation prop has functions like setParams, goBack, and navigate.  
        let right = ( < Button title = {
            `${state.params.user}'s info`
          }
          onPress = {
            () => setParams({
              mode: 'info'
            })
          }
          />     
          );     
   if (state.params.mode === 'info') {    
   right = (      
   <Button          
   title="Done"           
   onPress={() => setParams({ mode: 'none' })}        
   / >
        );
      }
    return {right};
  },
};
render() {
  const {
    params
  } = this.props.navigation.state;
  return ( 
    < View >
    < Text > Chat with {params.user} < /Text> 
    </View >
  );
}
}
export default ChatScreen;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery的checkbox下拉框插件代码
Jun 25 Javascript
jquery 学习之二 属性(html()与html(val))
Nov 25 Javascript
javascript查找字符串中出现最多的字符和次数的小例子
Oct 29 Javascript
js实现的捐赠管理完整实例
Jan 20 Javascript
简单实现js选项卡切换效果
Feb 09 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
Feb 10 Javascript
JavaScript中in和hasOwnProperty区别详解
Aug 04 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
Apr 27 Javascript
记录一篇关于redux-saga的基本使用过程
Aug 18 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
Dec 28 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
May 10 Javascript
vue页面切换项目实现转场动画的方法
Nov 12 Javascript
React项目动态设置title标题的方法示例
Sep 26 #Javascript
Vue resource三种请求格式和万能测试地址
Sep 26 #Javascript
JS返回页面时自动回滚到历史浏览位置
Sep 26 #Javascript
使用weixin-java-tools完成微信授权登录、微信支付的示例
Sep 26 #Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
Sep 26 #Javascript
深入理解react-router 路由的实现原理
Sep 26 #Javascript
node.js使用redis储存session的方法
Sep 26 #Javascript
You might like
PHP 中执行排序与 MySQL 中排序
2009/04/21 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
CI框架装载器Loader.php源码分析
2014/11/04 PHP
一个不错的用JavaScript实现的UBB编码函数
2007/03/09 Javascript
jQuery中:not选择器用法实例
2014/12/30 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
js实现下拉菜单效果
2017/03/01 Javascript
Vue 过渡实现轮播图效果
2017/03/27 Javascript
vue基于mint-ui实现城市选择三级联动
2020/06/30 Javascript
layui默认选中table的CheckBox复选框方法
2019/09/19 Javascript
vuex存取值和映射函数使用说明
2020/07/24 Javascript
前端 javascript 实现文件下载的示例
2020/11/24 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
Python解释执行原理分析
2014/08/22 Python
Python中对列表排序实例
2015/01/04 Python
让Python代码更快运行的5种方法
2015/06/21 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
解决Python3中的中文字符编码的问题
2018/07/18 Python
使用python实现简单五子棋游戏
2019/06/18 Python
pytorch使用 to 进行类型转换方式
2020/01/08 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
Python异常处理机制结构实例解析
2020/07/23 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
CSS3中box-shadow的用法介绍
2015/07/15 HTML / CSS
CSS3实现swap交换动画
2016/01/19 HTML / CSS
大专毕业生自我评价分享
2013/11/10 职场文书
教师批评与自我批评范文
2014/10/15 职场文书
2014年幼儿园教研工作总结
2014/12/04 职场文书
工程部文员岗位职责
2015/02/04 职场文书
学习与创新自我评价
2015/03/09 职场文书
社区文明倡议书
2015/04/28 职场文书
公安机关起诉意见书
2015/05/20 职场文书
教师读书笔记
2015/06/29 职场文书
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python
排查Tomcat进程假死的问题
2022/05/06 Servers