Uniapp の dom ノード取得方法: 1. 「let dom=query.select(selector)」メソッドを通じてセレクターに一致する最初のノードを取得します; 2. 「letdoms=query.selectAll(selector)」を使用します。 " メソッドを使用してすべてのノードを取得します。
uni-app DOMノードの取得
[参考公式サイト] : https://uniapp.dcloud.io/api/ui/nodes-info?id=selectorqueryexec]1. SelectorQuery オブジェクト インスタンスの取得方法:let query=uni.createSelectorQuery();関数: を返します。 SelectorQuery オブジェクト インスタンス。このインスタンスは、DOM ノードの情報をクエリするために使用されます。 注: (1) このメソッドは、ライフサイクルがマウントされた後に呼び出す必要があります。 (2) nvue テクノロジーはこの方法をサポートしていません。 2. DOM ノードの取得方法: 1. セレクターに一致する最初のノードを取得します:
let dom=query.select(selector)2. セレクターに一致するすべてのノードを取得します:
letdoms=query.selectAll(selector)上記の 2 つのメソッドはどちらも、DOM ノード情報を取得するために使用される NodesRef オブジェクト インスタンスを返します。 3. DOM ノードの情報を取得する方法: (dom を例にします) 1. DOM ノードのレイアウト位置情報を取得します:
doms.boundingClienRect(function(res){ //res:{left,top,right,bottom,width,height} }).exec(function(){ //上述布局位置信息获取成功后执行的回调函数 })2. DOM ノードの情報を取得 スクロール位置情報:
doms.scrollOffset(function(){ //res:{scrollLeft,scrollTop} }).exec(function(){ //上述滚动位置信息获取成功后执行的回调函数 })3. DOM ノードの全情報を取得:
doms.fields({ rect:true, //是否返回节点布局位置信息{left,top,right,bottom} size:true, //是否返回节点尺寸信息{width,height} scrollOffset:true //是否返回节点滚动信息{scrollLeft,scrollTop} },function(res){ //res 可以返回第一个参数对象中指定为true的相关信息 }).exec(function(){ //上述节点信息获取成功后执行的回调函数 })4. コード例1. 例 1: multiple in クラス名が leftItem であるノードの場合、これらのノードの上部からの距離を取得し、これらの距離をデータ領域で定義されている leftItemTop という名前の配列に割り当てる方法。
uni.createSelectorQuery().selectAll(".leftItem").boundingClienRect(res=>{ this.leftItemTop=res.map(item=>item.top) }).exec(()=>{ console.log(this.leftItemTop) })2. 例 2:
uni.createSelectorQuery().selectAll(".rightItem").fields({ size:true },res=>{ this.rightItemHeight=res.map(item=>{item.height}) }).exec(()=>{ console.log(this.rightItemHeight) })5. データレンダリング DOM によって引き起こされる非同期の問題: [参考公式 Web サイト: https://cn.vuejs.org/v2/api/#vm-nextTick]
[推奨読書: https://segmentfault.com/a/1190000012861862]**質問:**特定のデータ領域の変数 temp は DOM 構造のレンダリングに影響を与えます。変数が更新された後に指定されている DOM 構造が再レンダリングされるまで、別の操作を実行する必要があります。これらの他の操作は、DOM 構造が再レンダリングされた後にのみ実行されるようにするにはどうすればよいでしょうか? 解決策: DOM 構造の再レンダリングが必要なこれらの操作は、this&nextTick(function(){}) の形式でコールバック関数に記述する必要があります。
<block v-for="(item,index) in domData"> <view class="domItem">{{item.title}}</view> </block>上記の構造はデータ domData によって駆動される構造であるとしましょう。変数 domData は、最初にインターフェイスから必要なデータを取得してから、それを DOM 構造にレンダリングする必要があります。
data(){ return{ domData:[], //用于储存从接口中获取的DOM数据 domItemWidth:[] //用于储存获取的DOM结构的宽度 } }変数 domData がインターフェイスからデータを取得するときは、これらの構造の幅を取得する前に、DOM 構造が正常にレンダリングされることも確認する必要があります。したがって、後続の操作では this.nextTick(function) を使用する必要があります。 (){ })、これは this.nextTick(function(){}) のコールバック関数内に記述されます。 上記の例のコードは次のとおりです:
uni.request({ url:"http://localhost:8080/......", data:{.....}, success:res=>{ this.domData=res.data; this.nextTick(()=>{//该格式保证了domData已经得到接口数据并成功渲染DOM结构 uni.createSelectorQuery().selectAll(".domItem").fields({ size:true },res=>{ this.domItemWidth=res.map(item=>item.width) }).exec(()=>{ console.log(this.domItemWidth) }) }) } })
以上がuniappでdomノードを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、モバイルプラットフォームとWebプラットフォームのデバッグ戦略について説明し、Android Studio、Xcode、Chrome Devtoolsなどのツールを強調し、OSとパフォーマンスの最適化全体で一貫した結果を得るためのテクニックについて説明します。

この記事では、Hbuilderx、Wechat開発者ツール、Chrome Devtoolsなどのツールに焦点を当てたUniapp開発のためのデバッグツールとベストプラクティスについて説明します。

この記事では、複数のプラットフォームにわたるUNIAPPアプリケーションのエンドツーエンドテストについて説明します。テストシナリオの定義、Appiumやサイプレスなどのツールの選択、環境のセットアップ、テストの書き込みと実行、結果の分析、インテグラートをカバーします

この記事では、ユニット、統合、機能、UI/UX、パフォーマンス、クロスプラットフォーム、セキュリティテストなど、UNIAPPアプリケーションのさまざまなテストタイプについて説明します。また、クロスプラットフォームの互換性を確保し、JESのようなツールを推奨しています

この記事では、過剰なグローバルデータの使用や非効率的なデータバインディングなど、UNIAPP開発における一般的なパフォーマンスアンチパターンについて説明し、これらの問題を特定して緩和してアプリのパフォーマンスを向上させる戦略を提供します。

この記事では、プロファイリングツールを使用して、Uniappのパフォーマンスボトルネックを識別および解決し、セットアップ、データ分析、最適化に焦点を当てています。

この記事では、Uniappでネットワーク要求を最適化するための戦略について説明し、遅延の削減、キャッシュの実装、および監視ツールを使用してアプリケーションのパフォーマンスを向上させることに焦点を当てています。

この記事では、圧縮、レスポンシブデザイン、怠zyなロード、キャッシング、およびWebP形式の使用を通じて、Webパフォーマンスを向上させるために、Uniappの画像の最適化について説明します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
