Segment.tsx 1.0 KB

123456789101112131415161718192021222324252627
  1. import { View, Text } from '@tarojs/components'
  2. import './Segment.scss'
  3. import { useState } from 'react'
  4. export default function Component(props: {
  5. index?: number,
  6. titles: Array<string>,
  7. changed: Function
  8. }) {
  9. const [current, setCurrent] = useState(props.index ? props.index : 0)
  10. function selItem(index) {
  11. setCurrent(index);
  12. props.changed(index);
  13. }
  14. return <View className='segment'>
  15. <View className={current == 0 ? 'segment_item segment_item_sel' : 'segment_item'} onClick={(e) => {e.stopPropagation(); selItem(0) }}>
  16. <Text className={current == 0 ? 'segment_text_sel' : 'segment_text'}>{props.titles[0]}</Text>
  17. </View>
  18. <View style={{ width: 16 }} />
  19. <View className={current == 1 ? 'segment_item segment_right segment_item_sel' : 'segment_item segment_right'} onClick={(e) => {e.stopPropagation(); selItem(1) }}>
  20. <Text className={current == 1 ? 'segment_text_sel' : 'segment_text'}>{props.titles[1]}</Text>
  21. </View>
  22. </View>
  23. }