reactjs – 如何在React中生成表单标签的唯一ID?

前端之家收集整理的这篇文章主要介绍了reactjs – 如何在React中生成表单标签的唯一ID?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有表单元素的标签,我想有唯一的ID来链接标签与htmlFor属性的元素。这样的东西:
React.createClass({
    render() {
        const id = ???;
        return (
            <label htmlFor={id}>My label</label>
            <input id={id} type="text"/>
        );
    }
});

我曾经基于this._rootNodeID生成ID,但是从React 0.13起不可用。什么是最好的和/或最简单的方法来做呢?

这个解决方案对我很好。

utils / newid.js:

let lastId = 0;

export default function(prefix='id') {
    lastId++;
    return `${prefix}${lastId}`;
}

我可以这样使用它:

import newId from '../utils/newid';

React.createClass({
    componentWillMount() {
        this.id = newId();
    },render() {
        return (
            <label htmlFor={this.id}>My label</label>
            <input id={this.id} type="text"/>
        );
    }
});

但它不会在同构应用程序中工作。

添加17.08.2015。而不是自定义newId函数,你可以使用uniqueId从lodash。

更新时间:2012年8月16日最好在componentWillMount中生成ID。

原文链接:https://www.f2er.com/react/303022.html

猜你在找的React相关文章