jd-opensource / jd-opensource/taro-ui

在微信小程序下tabbar图标和文字不对齐

Open
#1,379 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
4.7k
Forks
740
PR merge metrics
No merged PRs in 30d

Description

### Taro UI 版本信息

v2.3.4

### 问题描述

打包成h5时,图标和文字能对齐。
但是打包成微信小程序时,发现文字和图标没有水平居中(文字稍微偏左)
![image](https://user-images.githubusercontent.com/26686921/128840532-50b72397-84f2-4e9c-8b40-a237ea70e753.png)

### 复现步骤

定位后发现,去掉选择器.at-tab-bar__title 下的max-width:200rpx属性就能解决问题,
初步判断为,文本容器的max-width比图标容器的width要小。
![image](https://user-images.githubusercontent.com/26686921/128840626-27abc085-becd-49e5-b143-f4d163d3ca46.png)

### 复现代码

// coustom-tab-bar/index.tsx

import React, { useState } from 'react';
import { styled } from 'linaria/react';
import { AtTabBar } from 'taro-ui';
import Taro from '@tarojs/taro';
import 'taro-ui/dist/style/components/tab-bar.scss';
import 'taro-ui/dist/style/components/icon.scss';

const tabList = [
{ title: '主页', iconType: 'home', url: '/pages/Home/index' },
{ title: '搜索', iconType: 'search', url: '/pages/Search/index' },
{ title: '我的', iconType: 'user', url: '/pages/User/index' },
];

type ITabBarProps = {};

const Root = styled(AtTabBar)``;

const TabBar: React.FC = ({}) => {
const [current, setCurrent] = useState(0);

function handleChange(index: number) {
if (current !== index) {
Taro.switchTab({ url: tabList[index].url });
setCurrent(index);
}
}

return ;
};

export default TabBar;

### 报错信息

### 系统信息

Taro v3.3.2

### 补充信息

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.