検索

vue の面接の質問の概要 (回答付き)

Mar 21, 2019 am 10:45 AM
htmlhtml5javascript

この記事では、Vue の面接の質問 (回答付き) について紹介します。これには一定の参考価値があります。困っている友人は参考にしてください。お役に立てれば幸いです。

Vue はますます人気が高まっています。国内外に目を向けると、BATのような大企業からスタートアップ企業まで、Vueは幅広く活用されています。面接では、Vue 関連の技術原則もテストする必要があります。フロントエンド エンジニアにとって、Vue を習得することはオプションではなく、むしろ「必須コース」に近いものであると言えます。

Vue プロジェクトに取り組んでいる多くの人は、要素 ui やその他の UI フレームワークを直接使用しています。これらのフレームワークは効率の点で非常に役立ちますが、実際にはテクノロジーをまったく向上させません。面接官からの質問に Vue のコア テクノロジーについて答えてください。

開発者にとって、技術フレームワークの使用方法だけを知っていて、このフレームワークのコア テクノロジの背後にある実装原理や設計アイデアを全く理解していない場合、テクノロジの道を遠くまで進むことはできません。開発者として、私は非常に深い経験を持っています。ここで心温まるお勧めをしたいと思います。UI フレームワーク ant Design vue の作者は、Geek Time で UI フレームワークを立ち上げました。コースは Vue Development Practical と呼ばれています (記事の下部に購入リンクがあります)。私もこのコースを購入しましたが、講義が充実していると思います。Vue の技術的な原理と応用を習得するのに役立ち、その基礎となる原理も理解できます。実践的なプロジェクトを通じて、独立して学習できるようになります。 Vue のフロントエンド プロジェクトを担当します。この機能は、転職、面接、Vue の入門に非常に役立ちます。私を含む多くのバイヤーも、有益な情報が満載だと感じています。困っている人全員にお勧めします。

さて、本題に入りましょう。今日は、Vue に関する高度な面接の質問をいくつか紹介します。

1. MVVM とは何ですか?
回答: MVVM は Model-View-ViewModel の略語です。モデルはデータ モデルを表し、データ操作のビジネス ロジックを定義します。ビューはビュー レイヤーを表し、データ モデルをページにレンダリングする役割を果たします。 ViewModel は双方向バインディングによってバインドされており、DOM を手動で操作することなく View と Model が同期的に対話できるようにする設計思想です。

2. vue-router の動的ルーティングを定義するにはどうすればよいですか?渡された動的パラメータを取得するにはどうすればよいですか?
回答: ルーター ディレクトリの Index.js ファイルで、パス属性に /:id を追加します。ルーター オブジェクトの params.id を使用する

3. vue-router にはどのような種類のナビゲーション フックがありますか?
回答: 3 種類あり、1 つはグローバル ナビゲーション フック: router.beforeEach(to,from,next) で、その機能はジャンプする前に判断してインターセプトすることです。 2 番目のタイプ: コンポーネント内のフック、3 番目のタイプ: 排他的なコンポーネントの独立したルーティング

4. vuex とは何ですか?使い方?どの機能シナリオで使用されますか?
回答: vue フレームワークでの状態管理。 main.jsにstoreを導入して注入します。新しいディレクトリ ストアが作成され、エクスポートされます。シナリオには次のものが含まれます。 シングルページ アプリケーション内のコンポーネント間のステータス。音楽の再生、ログイン状態、ショッピングカートへの追加

5. MVVM と MVC の違いは何ですか?他のフレームワーク(jquery)とどう違うのですか?どのシナリオが適用されますか?
回答: MVVM と MVC は両方とも設計思想です。主なことは、MVC のコントローラーが ViewModel に進化することです。MVVM は主にノードを操作するのではなく、データを通じてビュー層を表示し、多数の DOM を解決しますMVC での操作。ページのレンダリングのパフォーマンスが低下し、読み込み速度が遅くなり、ユーザー エクスペリエンスに影響します。主に、大量のデータ操作を行うシナリオで使用されます。
シナリオ: データ操作が多いシナリオ、より便利

6. Vue 社の双方向データ バインディングの原理は何ですか?
回答: vue.js は、パブリッシャー/サブスクライバー モデルと組み合わせたデータ ハイジャックを使用します。Object.defineProperty() を使用して各プロパティのセッターとゲッターをハイジャックし、データが変更されたときにサブスクライバーにメッセージをパブリッシュします。対応するリスニング コールバック。

7. vue コンポーネントをカプセル化するプロセスを教えてください。
回答: まず第一に、コンポーネントはプロジェクト全体の開発効率を向上させることができます。コンポーネントはページを複数の比較的独立したモジュールに抽象化し、効率の低さ、メンテナンスの困難さ、再利用性といった従来のプロジェクト開発の問題を解決します。などの問題があります。

次に、Vue.extend メソッドを使用してコンポーネントを作成し、Vue.component メソッドを使用してコンポーネントを登録します。子コンポーネントにはデータが必要です。データは props で定義できます。子コンポーネントはデータを変更した後、そのデータを親コンポーネントに渡したいと考えます。起動メソッドを使用できます

8. Vue.js のテンプレートのコンパイルについての理解を話してください
回答: つまり、最初に AST ツリーに変換され、次にレンダリング関数は VNODE (Vue 社の仮想 DOM ノード) を返します。
詳細な手順:

まず、テンプレートを AST 構文ツリーにコンパイルします (抽象構文ツリーは、ソースの抽象構文構造のツリーです)コード) を通じてコン​​パイラ表現)、コンパイルは、コンパイラの作成に使用される createCompiler の戻り値です。オプションのマージを担当します。

次に、描画関数を取得するためのAST生成(AST構文木を描画関数文字列に変換する処理)を行います。描画関数の戻り値はVNodeです。VNodeは仮想DOMノードです。 (ラベル名、子ノード、テキストなど)

を含む Vue

9. の機能とその使用方法は何ですか?
回答: 動的コンポーネントをラップする場合、主にコンポーネントのステータスを保持するか、再レンダリングを回避するために、非アクティブなコンポーネント インスタンスがキャッシュされます;
使用法: 単純なページ
キャッシュ:
キャッシュしない:

10 Vue と React の違い
回答: 同様の点: どちらもコンポーネント化を促進し、「プロップ」の概念があり、独自の構築ツールを持っています。Reat と Vue にはフレームワークのスケルトンのみがあり、その他ルーティングや状態管理などの機能はフレームワークによって分離されたコンポーネントです。

相違点: React: 一方向データ フロー、構文 - JSX、React では状態を更新するために setState() メソッドを使用する必要があります。 Vue: データの双方向バインディング、構文 - HTML、状態オブジェクトは不要、データは Vue オブジェクト内で data 属性によって管理されます。小規模なアプリケーションには適していますが、大規模なアプリケーションには適していません。

11. v-show 命令と v-if 命令の類似点と相違点は何ですか?
v-show 命令は、displayCSS 属性を変更することで表示または非表示にします。要素。
v-if 命令は、DOM を直接破棄して再構築し、要素を表示および非表示にします。

12. $route と $router の違い
答え: $route は、パス、パラメータ、ハッシュ、クエリ、フルパス、一致、 name など ルーティング情報パラメータ。 $router は、ルーティング ジャンプ メソッド、フック関数などを含む「ルーティング インスタンス」オブジェクトです。

13. vue におけるキー値の役割
答え: Vue.js の使用 v-for がレンダリングされた要素のリストを更新するとき、デフォルトでは「インプレース再利用」戦略が使用されます。データ項目の順序が変更された場合、Vue はデータ項目の順序に一致するように DOM 要素を移動しません。単に各要素をそこで再利用し、特定のインデックスでレンダリングされた各要素が表示されるようにします。 key の主な機能は、仮想 DOM を効率的に更新することです

この記事はここで終了です。その他の興味深いコンテンツについては、PHP 中国語の JavaScript チュートリアル ビデオ 列に注目してください。 Webサイト!

関連する推奨事項:

vue インタビューの質問 》、《 フロントエンド インタビューの質問

以上がvue の面接の質問の概要 (回答付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はsegmentfaultで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
JavaScript、C、およびブラウザの関係JavaScript、C、およびブラウザの関係May 01, 2025 am 12:06 AM

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか

node.jsは、型を使用してストリーミングしますnode.jsは、型を使用してストリーミングしますApr 30, 2025 am 08:22 AM

node.jsは、主にストリームのおかげで、効率的なI/Oで優れています。 ストリームはデータを段階的に処理し、メモリの過負荷を回避します。大きなファイル、ネットワークタスク、リアルタイムアプリケーションの場合。ストリームとTypeScriptのタイプの安全性を組み合わせることで、パワーが作成されます

Python vs. JavaScript:パフォーマンスと効率の考慮事項Python vs. JavaScript:パフォーマンスと効率の考慮事項Apr 30, 2025 am 12:08 AM

PythonとJavaScriptのパフォーマンスと効率の違いは、主に以下に反映されています。1)解釈された言語として、Pythonはゆっくりと実行されますが、開発効率が高く、迅速なプロトタイプ開発に適しています。 2)JavaScriptはブラウザ内の単一のスレッドに限定されていますが、マルチスレッドおよび非同期I/Oを使用してnode.jsのパフォーマンスを改善でき、両方とも実際のプロジェクトで利点があります。

JavaScriptの起源:その実装言語の調査JavaScriptの起源:その実装言語の調査Apr 29, 2025 am 12:51 AM

JavaScriptは1995年に発信され、Brandon Ikeによって作成され、言語をCに実現しました。 2。JavaScriptのメモリ管理とパフォーマンスの最適化は、C言語に依存しています。 3. C言語のクロスプラットフォーム機能は、さまざまなオペレーティングシステムでJavaScriptを効率的に実行するのに役立ちます。

舞台裏:JavaScriptをパワーする言語は何ですか?舞台裏:JavaScriptをパワーする言語は何ですか?Apr 28, 2025 am 12:01 AM

JavaScriptはブラウザとnode.js環境で実行され、JavaScriptエンジンに依存してコードを解析および実行します。 1)解析段階で抽象的構文ツリー(AST)を生成します。 2)ASTをコンパイル段階のバイトコードまたはマシンコードに変換します。 3)実行段階でコンパイルされたコードを実行します。

PythonとJavaScriptの未来:傾向と予測PythonとJavaScriptの未来:傾向と予測Apr 27, 2025 am 12:21 AM

PythonとJavaScriptの将来の傾向には、1。Pythonが科学コンピューティングの分野での位置を統合し、AI、2。JavaScriptはWebテクノロジーの開発を促進します。どちらもそれぞれのフィールドでアプリケーションシナリオを拡大し続け、パフォーマンスをより多くのブレークスルーを行います。

Python vs. JavaScript:開発環境とツールPython vs. JavaScript:開発環境とツールApr 26, 2025 am 12:09 AM

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

JavaScriptはCで書かれていますか?証拠を調べるJavaScriptはCで書かれていますか?証拠を調べるApr 25, 2025 am 12:15 AM

はい、JavaScriptのエンジンコアはCで記述されています。1)C言語は、JavaScriptエンジンの開発に適した効率的なパフォーマンスと基礎となる制御を提供します。 2)V8エンジンを例にとると、そのコアはCで記述され、Cの効率とオブジェクト指向の特性を組み合わせて書かれています。3)JavaScriptエンジンの作業原理には、解析、コンパイル、実行が含まれ、C言語はこれらのプロセスで重要な役割を果たします。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

DVWA

DVWA

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

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

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