/**
* 本模块提供路由项唯一性 key 的生成函数
* @type {string}
*/
// 目标全局唯一key的前缀部分 ,
// 格式 : id-当前时间的时间戳,例子: id-1526283254332-0
let uniqueBaseId = `id-${Date.now()}`;
// 目标全局唯一key的生成计数器,从0开始,每生成一个新的key,
//该变量自增1
let uuidCount = 0;
/**
* 仅用于 react navigation 单元自测自己使用
* @private
*/
export function _TESTING_ONLY_normalize_keys() {
uniqueBaseId = 'id';
uuidCount = 0;
}
/**
* 生成一个全局唯一的key
* @returns {string}
*/
export function generateKey() {
return `${uniqueBaseId}-${uuidCount++}`;
}
React Navigation源代码阅读 :routers/KeyGenerator.js
最新推荐文章于 2024-02-24 16:23:09 发布