1

我有一个列表,我需要显示没有。列表中的元素。我用过<FormattedMessage>,一切都很好,但是当列表大小为 时0<FormattedMessage>什么都不显示。它适用于否定(如果我对其进行硬编码)和肯定(如果列表有成员),但如果为 0,则不显示任何内容。

import React, { Component } from 'react'
import {FormattedMessage} from 'react-intl'

class List extends Component {

  render() {

    let userNumber=0;
    if(this.props.list.get('users').size > 0){
      userNumber = this.props.list.get('users').size;
    }
    else{
      userNumber = 0;
    }

    console.log(userNumber)
    console.log(typeof userNumber)
    return (
          <FormattedMessage
            id = 'active-users'
            description = 'ACTIVE USERS'
            defaultMessage = 'ACTIVE USERS ({userList})'
            values = {{
              userList: userNumber
            }}
          />
      )
  }
}

export default List
4

1 回答 1

3

您可以使用'ACTIVE USERS ({userList, number})'代替'ACTIVE USERS ({userList})'

<FormattedMessage
        id = 'active-users'
        description = 'ACTIVE USERS'
        defaultMessage = 'ACTIVE USERS ({userList, number})'
        values = {{
          userList: userNumber
 }}/>

jsfiddle

于 2016-08-01T07:26:00.757 回答