我希望我的应用程序对用户更灵活,并尝试使我的字体大小可伸缩。对于这个,我是增量"size ">
const userConfig = useSelector(selectUserConfig)
const userTheme = useMemo(() => getUserTheme(userConfig), [userConfig])
...
const getUserTheme = (userConfig: IUser['config'] = { fontSize: 0, iconSize: 0 }): any => {
return {
...theme,
components: {
...theme.components,
Icon: {
...theme.components.Icon,
sizes: increaseObjProps(theme.components.Icon.sizes, userConfig.iconSize),
},
},
fontSizes: increaseObjProps(theme.fontSizes, userConfig.fontSize),
}
}
function increaseObjProps(obj: any, value: number) {
const newObj: any = {}
for (const key in obj) {
newObj[key] = typeof obj[key] === 'number' ? obj[key] + value : obj[key]
}
return newObj
}
修改userConfig.fontSize后应用程序停止用户交互4-5秒。如何在应用程序中加快主题更改?
这不是你问题的答案,但你应该知道操作系统可以使用操作系统配置中的可访问性属性来缩放字体,所以你真的不必担心缩放字体,如果用户打开了该属性,操作系统会为你做的。