激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - React - react-native 實現購物車滑動刪除效果的示例代碼

react-native 實現購物車滑動刪除效果的示例代碼

2021-12-31 16:50程序猿tx React

這篇文章主要介紹了react-native 實現購物車滑動刪除效果的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

購物車的功能基本上電商項目都會有的,這是一篇關于react-native的,原生android的已經好久沒寫了。記得以前寫原生購物車的時候,遇到過產品的靈魂質問,為啥iOS的滑動刪除可以,android卻那么難實現的。這個時候,我就打開微信說,android的微信版也是長按進行操作,iOS的是滑動操作的,兩個平臺自帶的系統交互操作是不一樣的。當然,最后還是默默的找各種三方庫去進行滑動刪除。

rn的項目也是找的網上的一個三方庫進行列表滑動操作的,github地址react-native-swipe-list-view

最基本的使用方法和flatList差不多,data 屬性數組數據源,renderItem 從data中挨個取出數據并渲染到列表中

?
1
2
3
4
5
<SwipeListView
  data={this.state.listViewData}
  renderItem={this.renderItem}
  keyExtractor={this.keyExtractor}
/>

這時候是不可以左右滑動的,就跟普通的flatList效果一樣。加上renderHiddenItem屬性,可以左右滑動。renderHiddenItem渲染的就是隱藏的內容,隱藏的內容位置是通過flex布局來控制,下面這個例子使用橫向布局,通過space-between將內容控制在左右兩邊,形成了左右滑動時出現隱藏內容。

?
1
2
3
4
5
6
7
8
9
10
11
//這是左右都可以滑動的
renderHiddenItem = (data, rowMap) => {
  return <View style={{
    flex: 1,
    flexDirection: 'row',
    justifyContent: 'space-between'
  }}>
    <Text>Left</Text>
    <Text>Right</Text>
  </View>
}

我們這邊只需要可以左滑,通過justifyContent: 'flex-end'屬性將刪除按鈕內容置于最右邊,同時設置SwipeListView的屬性disableRightSwipe來禁止右滑操作。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
renderHiddenItem = (data, rowMap) => {
  return <View style={{
    flex: 1,
    flexDirection: 'row',
    justifyContent: 'flex-end',
  }}>
    <TouchableOpacity style={{
      backgroundColor: '#FF496C',
      width: 80,
      justifyContent: 'center',
      alignItems: 'center'
    }}>
      <Text style={{color:'#fff'}}>刪除</Text>
    </TouchableOpacity>
  </View>
}

這個時候向左滑,可以看到右邊的刪除按鈕出來了,但是沒有一直處于打開狀態,還需要添加rightOpenValue={-80}屬性,使其處于打開狀態。

?
1
2
3
4
5
6
7
8
<SwipeListView
  disableRightSwipe
  data={this.state.listViewData}
  renderItem={this.renderItem}
  keyExtractor={this.keyExtractor}
  renderHiddenItem={this.renderHiddenItem}
  rightOpenValue={-80}
/>

另外有一個需要注意的是,renderItem進行列表渲染時,最外層的視圖,官方推薦使用可點擊響應觸摸的,而不是<View/>,正常情況是,打開了一個視圖,點其他視圖,默認會關閉打開的那一項,如果最外層是<View/>則不會有這種效果。

?
1
2
3
4
5
6
7
8
9
//最外層是 TouchableHighlight
renderItem = ({item, index}, rowMap) => {
  return <TouchableHighlight
    onPress={() => {
    }}
    underlayColor={'#fff'}>
    ...
  </TouchableHighlight>
}

至此,滑動刪除的效果已經基本滿足了,后續就是業務邏輯,增刪操作數據源刷新頁面了。

react-native 實現購物車滑動刪除效果的示例代碼

到此這篇關于react-native 實現購物車滑動刪除效果的示例代碼的文章就介紹到這了,更多相關react-native 滑動刪除內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://juejin.cn/post/6917609565685055502

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲视频在线一区二区 | 久久国产中文 | 免费午夜网站 | 国产一级午夜 | 一级毛片手机在线观看 | 亚洲国产色婷婷 | 日韩av有码在线 | 亚洲国产中文字幕 | 久久精品亚洲精品国产欧美kt∨ | 精品少妇v888av | 一本色道久久综合狠狠躁篇适合什么人看 | 欧美性受xxx黑人xyx性爽 | 99re66热这里只有精品8 | 91精品国产综合久久久动漫日韩 | 激情午夜天 | 天天夜碰日日摸日日澡性色av | 成人免费观看49www在线观看 | 久久99精品久久 | 久久精品视频国产 | 久久精品欧美一区二区三区不卡 | 午夜精品久久久久久久99热浪潮 | 伊人av影院 | 日日天日日夜日日摸 | 天天草天天爱 | 91精品国产综合久久婷婷香 | 久久99精品国产自在现线 | 久操福利视频 | 中文字幕在线观看网址 | 黄污网站在线 | 在线观看免费视频麻豆 | 天天鲁在线视频免费观看 | 欧美性a视频| 国产乱淫av片免费观看 | 一级黄色毛片a | 91精品国产综合久久久动漫日韩 | 欧美成人h版在线观看 | 最新久久免费视频 | 西川av在线一区二区三区 | 麻豆视频在线播放 | 一分钟免费观看完整版电影 | 网站一区 |