この記事の例では、WeChatアプレットで複数行のテキストスクロールを実装するための具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。 wxml <view class="full" style="height:100%;overflow:hidden"> <スワイパー 自動再生="true" 間隔="3000" 継続時間="500" 円形="true" 垂直方向="true" スタイル="高さ:100%"> <スワイパーアイテム wx:for="{{topnewslist}}" wx:key="{{index}}" catchtouchmove='catchTouchMove'> <van-notice-bar scrollable="{{false}}" bindtap="tonewsdetail" wx:for="{{item}}" wx:for-item="it" wx:key="{{index}}" data-newsid="{{it.new_id}}" style="width:100%" text="{{it.new_topic}}" /> </スワイパーアイテム> </スワイパー> </ビュー> wxss スワイパーアイテム{ 高さ: 100%; } js //index.js // "../../utils/api.js" からアプリケーション インスタンスのインポート API を取得します。 var トークン = '' const アプリ = getApp() ページ({ データ: { トップニュースリスト:[] }, onLoad: 関数 () { }, ニュース詳細(e){ var newsid=e.currentTarget.dataset.newsid; wx.navigateTo({ url: '/pages/newsdetail/newsdetail?newsid='+newsid, }) }, スクロールニュースを読み込む(){ api.get("mpapi/mpmnews.ashx", { アクション:'toplist', トークン: token}).then((res)=>{ (res.code==1)の場合{ //res.list=[{"new_id":1,"new_topic":"111"},{"new_id":2,"new_topic":"222"},{"new_id":3,"new_topic":"333"},{"new_id":4,"new_topic":"444"}] this.setData({ topnewslist: this.splitArr(res.list, 2) //呼び出し//呼び出し後 [[{"new_id":1,"new_topic":"111"},{"new_id":2,"new_topic":"222"}],[{"new_id":3,"new_topic":"333"},{"new_id":4,"new_topic":"444"}]] }) } }) }, /** * 配列を分割して2次元配列パッケージを作成します * @param data array * @param senArrLen 分割するサブ配列の長さ */ splitArr(データ、senArrLen){ // データを len のグループに処理します。let data_len = data.length; arrOuter_len = data_len とします。% senArrLen === 0 ? data_len / senArrLen : parseInt((data_len / senArrLen) + '') + 1; let arrSec_len = data_len > senArrLen ? senArrLen : data_len; // 内側の配列の長さ let arrOuter = new Array(arrOuter_len); // 最も外側の配列 let arrOuter_index = 0; // 外側の配列のサブ要素のインデックス // console.log(data_len % len); (i = 0; i < data_len; i++) の場合 { if (i % senArrLen === 0) { arrOuter_index++; len = arrSec_len * arrOuter_indexとします。 // 内部配列の最小長は、データ長と len の剰余によって決まります。通常、最も内側の層は次の代入によって決定されます。arrOuter[arrOuter_index - 1] = new Array(data_len % senArrLen); if (arrOuter_index === arrOuter_len) //data_len の最後のグループ % senArrLen === 0 ? len = data_len % senArrLen + senArrLen * arrOuter_index : len = data_len % senArrLen + senArrLen * (arrOuter_index - 1); let arrSec_index = 0; // 2 番目のレイヤー配列のインデックス for (let k = i; k < len; k++) { // 最初のレイヤー配列の開始は、2 番目のレイヤー配列の長さ * 現在の最初のレイヤーのインデックスによって決まります arrOuter[arrOuter_index - 1][arrSec_index] = data[k]; arrSec_index++; } } } 戻り値 arrOuter }, //垂直スライドをインターセプトする catchTouchMove: function (res) { 偽を返す }, }) 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: 指定したディレクトリに nginx をインストールする方法の例
>>: MySQLは重複しないデータ挿入を実装するためにUNIQUEを使用する
XML/HTML コードコンテンツをクリップボードにコピー<ボタンスタイル= "カ...
目次序文ステップ1: セットアップと前方屈折ステップ2: 反射とフレネル方程式ステップ3: 多面屈折...
参考: Docker 公式 Redis ドキュメント1. 特別なバージョン要件がある場合は、redi...
現在の時刻を取得します: current_timestamp を選択します。出力: 2016-06-...
日常の開発では、データベースの追加、削除、変更、クエリが一般的に行われるため、Mysql で NUL...
Centos のサーバー側への適用がますます普及するにつれて、Centos7 もますます使用されるよ...
序文開発中は、インターフェース要求の繰り返しによってさまざまな問題が発生することがよくあります。ネッ...
MySql ダウンロード1. 公式サイトを開き、ダウンロード パスを見つけます。ダウンロード アドレ...
ダウンロードアドレス: https://dev.mysql.com/downloads/mysql/...
この記事では、Vite を使用して Vue 3 デスクトップ プロジェクトを開発する方法について説明...
この記事では、MySQL 学習ノートの select ステートメントの完全な使用方法を例を使用して説...
【1】存在するループを使用して外部テーブルを 1 つずつクエリし、各クエリの存在する条件ステートメン...
1. デフォルトでインストールされているMySQLの文字セットを確認するmysql> '...
背景少し前にブラウザカメラの取得とスキャンコード認識の機能を作りました。その際の知識ポイントと具体的...
1. Baidu Eslint Ruleプラグインをインストールする npm i -D eslint...