taro defaultProps

https://nervjs.github.io/taro/docs/best-practice.html#给组件设置-defaultprops


  1. import Taro, { Component, Config } from '@tarojs/taro'
  2. import {
  3. View,
  4. Text,
  5. Image,
  6. Icon,
  7. Button,
  8. Swiper,
  9. SwiperItem,
  10. } from '@tarojs/components'
  11. import './index.scss'
  12. const log = console.log;
  13. export default class EventPopper extends Component {
  14. // config = {
  15. // navigationBarTitleText: ''
  16. // }
  17. // constructor (props) {
  18. // super(props)
  19. // this.state = {
  20. // name: null,
  21. // // name: '',
  22. // // name: 'Hello world!',
  23. // }
  24. // }
  25. constructor () {
  26. super(...arguments)
  27. this.state = {
  28. // name: null,
  29. // name: '',
  30. name: 'Hello world!',
  31. }
  32. this.preventPop = this.preventPop.bind(this);
  33. }
  34. static defaultProps = {
  35. title: 'default prop title 1',
  36. }
  37. // 你可以通过 bind 传入多个参数
  38. preventPop (name, test, e) {
  39. //事件对象 e 要放在最后
  40. e.stopPropagation();
  41. log(`name =\n`, name)
  42. log(`test =\n`, test)
  43. log(`e =\n`, e)
  44. }
  45. render () {
  46. return(
  47. <Button onClick={(e) => this.preventPop(this.state.name, 'test name', e)}>
  48. 事件 button {this.props.title}
  49. </Button>
  50. )
  51. // return(
  52. // <Button onClick={this.preventPop.bind(this, this.state.name, 'test name')}>
  53. // 事件 button {this.props.title}
  54. // </Button>
  55. // )
  56. }
  57. }
  58. EventPopper.defaultProps = {
  59. title: 'default prop title 2',
  60. };

OK

bug

state !== props

https://github.com/NervJS/taro/issues/71#issuecomment-604846671

defaultProps

  1. static

  1. class Greeting extends Taro.Component {
  2. constructor (props) {
  3. super(props)
  4. this.state = {
  5. name: ``,
  6. }
  7. }
  8. static defaultProps = {
  9. name: 'Stranger'
  10. };
  11. render() {
  12. return (
  13. <h1>Hello, {this.props.name}</h1>
  14. );
  15. }
  16. }
  1. Props

  1. class Greeting extends Taro.Component {
  2. constructor (props) {
  3. super(props)
  4. this.state = {
  5. name: ``,
  6. }
  7. }
  8. render() {
  9. return (
  10. <h1>Hello, {this.props.name}</h1>
  11. );
  12. }
  13. }
  14. Greeting.defaultProps = {
  15. name: 'Stranger'
  16. };

全局变量

https://nervjs.github.io/taro/docs/best-practice.html#全局变量


taro defaultProps的更多相关文章

  1. taro 最佳实践

    对 JSX 支持程度补充说明: 不能在包含 JSX 元素的 map 循环中使用 if 表达式 不能使用 Array#map 之外的方法操作 JSX 数组 不能在 JSX 参数中使用匿名函数 暂不支持在 ...

  2. taro 填坑之路(一)taro 项目回顾

    (1)像素写法 PX -- 大写,否则会自动成rem (2)拿取列表第一条数据 let { activity:[firstItem] } = this.state; (3)使用props 需要设置默认 ...

  3. taro 自定义 轮播图组件

    1.代码 components/MySwiper/index.js /** * 轮播图组件 */ import Taro, { Component } from '@tarojs/taro'; imp ...

  4. 【Taro】363- 玩转 Taro 跨端之 flex 布局篇

    Taro 是一套遵循 React 语法规范的跨平台开发解决方案,但是目前当我们使用 Taro 的时候,在不同平台上的开发体验还有不一致的地方,所以我们也都期待有一套跨平台统一的解决方案,能够以最小差异 ...

  5. Taro自定义Modal对话框组件|taro仿微信、android弹窗

    基于Taro多端实践TaroPop:自定义模态框|dialog对话框|msg消息框|Toast提示 taro自定义弹出框支持编译到多端H5/小程序/ReactNative,还可以自定义弹窗类型/弹窗样 ...

  6. Taro多端自定义导航栏Navbar+Tabbar实例

    运用Taro实现多端导航栏/tabbar实例 (H5 + 小程序 + React Native) 最近一直在捣鼓taro开发,虽说官网介绍支持编译到多端,但是网上大多数实例都是H5.小程序,很少有支持 ...

  7. Taro踩坑记录一: swiper组件pagestate定制,swiperChange中setState导致组件不能滚动。

    import Taro, { Component } from '@tarojs/taro'; import { Swiper, SwiperItem, Image, View } from '@ta ...

  8. taro 滚动事件

    taro 滚动事件 taro scroll bug ScrollView https://nervjs.github.io/taro/docs/components/viewContainer/scr ...

  9. taro scroll tabs 滚动标签 切换

    taro scroll tabs 滚动标签 切换 https://www.cnblogs.com/lml-lml/p/10954069.html https://developers.weixin.q ...

随机推荐

  1. FridaHook框架学习(1)

    FridaHook框架学习(1) 前言 本次学习过程参考https://bbs.pediy.com/thread-227232.htm Frida安装与使用 Windows端安装 pip instal ...

  2. Java面试,面试题

    Java面试,面试题 HashMap,HashTable,ConcurrentHash的共同点和区别 HashMap HashTable ConcurrentHashMap ArrayList和Lin ...

  3. Linux环境Hive安装配置及使用

    Linux环境Hive安装配置及使用 一.Hive Hive环境前提 二.Hive架构原理解析 三.Hive-1.2.2单机安装流程 (1) 解压apache-hive-1.2.2-bin.tar.g ...

  4. sourcetree注册

    http://www.cnblogs.com/xiofee/p/sourcetree_pass_initialization_setup.html

  5. 子网划分、变长子网掩码和TCP/IP排错__IP寻址排错

    1.Cisco推荐使用的排错四步曲: ping环回地址:ping NIC:ping默认网关和ping远端设备. 1. 打开DOS窗口并ping127.0.0.1.这是一个诊断或环回地址,如果你得到一个 ...

  6. Scala面向对象—类详解

    package com.zzy import scala.beans.BeanProperty class Aclass { @BeanProperty//生成get和set方法对于其他框架里对标准的 ...

  7. F - Courses (学生选课(匈牙利算法模板))

    题目大意:一共有N个学生跟P门课程,一个学生可以任意选一门或多门课,问是否达成: 1.每个学生选的都是不同的课(即不能有两个学生选同一门课) 2.每门课都有一个代表(即P门课都被成功选过) 输入为: ...

  8. CF-311B Cats Transport(斜率优化DP)

    题目链接 题目描述 小S是农场主,他养了 \(M\)只猫,雇了 \(P\) 位饲养员. 农场中有一条笔直的路,路边有 \(N\) 座山,从 \(1\) 到 \(N\)编号. 第 \(i\) 座山与第 ...

  9. 虚拟机linux操作系统上安装vmwareTools

    当你安装过操作系统后,你就可以在虚拟机上找到这个画面,在管理里面有一个安装VMwareTools这就是我们的目标,打开后就直接点击下载并安装就好了 当下载完成后在虚拟机下面就会出现这个东西,他的意思就 ...

  10. 4.PowerShell DSC核心概念之配置

    什么是配置 DSC 配置是定义某一特殊类型函数的 PowerShell 脚本. 配置的语法 Configuration MyDscConfiguration { #配置块 Import-DscReso ...