javascript - React JS 访问变量超出范围

标签 javascript reactjs

我正在尝试使用数字js格式化数字 - 这是我记录number的工作。

let number 位于渲染函数之外时,如何访问它以向下传递到元素“unit-item-number”

import React from "react";

import listUnitItem from "./listUnitItem.scss";

//Number formatting
const numeral = require('numeral');

export default class ListUnitItem extends React.Component {
    componentDidMount() {
        //format numbers greater than 1000
        let number = this.props.number;
        if(number > 1000) {
            //only format number
            number = numeral(number).format('0.0a');
        } else {
            return number
        }
        console.log(number);
    }

    render() {
        return(
            <li className="list-unit-item col-sm-2">
                <span className="unit-item-number">{this.props.number}</span>
                <span className="unit-item-title">{this.props.title}</span>
            </li>
        )
    }
}

最佳答案

虽然上面的答案是有效的,但编写模块化代码并保持你的 react 组件无状态(没有状态变量)总是好的。以下代码显示了解决您的问题的更好方法:

import React from "react";

import listUnitItem from "./listUnitItem.scss";

//Number formatting
const numeral = require('numeral');

export default class ListUnitItem extends React.Component {
    // Save this method in some Utils class where you can access from other components.
    getFormattedNumber(number){
        //format numbers greater than 1000
        if (number > 1000) {
            //only format number
            number = numeral(number).format('0.0a');
        }
        return number
    }

    render() {
        return(
            <li className="list-unit-item col-sm-2">
                <span className="unit-item-number">{this.getFormattedNumber(this.props.number)}</span>
                <span className="unit-item-title">{this.props.title}</span>
            </li>
        )
    }
}

希望这会有所帮助!

关于javascript - React JS 访问变量超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42387989/

相关文章:

javascript - 在集合事件中努力使用 Backbone 语法

javascript - 按钮 onclick 不适用于 Javascript 查询

javascript - 对象在 p5.js 中不起作用

reactjs - 对来自 React.useContext(或其他任何地方)的值断言非 null 时的最佳实践

javascript - 如何在返回 react 应用程序时控制数据?

javascript - FullCalendar - 日历未显示(ASP.NET Core)

javascript - 从 React 中的 material-ui Button 获取值

reactjs - Babel意外的token编译react组件

javascript - 使用 React.js + Express.js 发送电子邮件

javascript - map 功能内的对话框无法正常工作