VUEインタビュー

 最初の部分:

成分1、アクティブクラスのプロパティ?どのようにネストされたルート定義?
A:ルータリンクアセンブリVUE-ルータモジュール。
 

VUEルータの動的ルーティングを定義する方法2、?動的パラメータ上のパスを取得する方法は? 
:パス上のルータのindex.jsファイルのディレクトリ属性ではプラス/:IDです。ルータオブジェクトparams.idを使用します
 

いくつかのナビゲーションフックを持っている3、VUE-ルータ、?    
:3、1には、グローバルナビゲーションフックです:(次の、からの、router.beforeEach )、 役割:ジャンプの前に裁判官の傍受。排他的な単一のルーティングコンポーネント:;:第三フックアセンブリ
 

そのSCSS 4.何?インストールを使用するには?主な特徴は何ですか?
:前のCSSは、CSSは、現在の関数を書くために、ネスティング、変数を定義します。最初のロードCSS-ローダー、ノード・ローダー、 SASS-ローダーのWebPACK-base.config.jsでローダモジュールなどは、展開するコンフィギュレーション・ファイルを追加したい:extenstion、プラス1つの以上のモジュール:テスト、ローダーの内部モジュールを
 

そのSCSS 4.1何?インストール手順のvue.cliのですか?主な特徴は何ですか?
A:コンパイル済みのCSS。

これらの手順を実行します。

ステップ:(SASSローダ、CSS-ローダ、ノードSASS)は、3つのローダーNPMと

ステップ2:.scssを拡大するためのプロパティを拡張することカナダで、ビルドディレクトリにwebpack.base.config.jsを見つけます

第三段階:まだ同じファイルに、モジュールの構成プロパティ

ステップ4:langは、スタイル属性で、その後のような、ラベルアセンブリを追加します。LANG =「SCSS」

主な機能は何ですか。

図1に示すように、変数は、例えば、($変数名=値)であってもよいです。

2、ミキサーは、例えば、()を使用することができます

3、入れ子にすることができます
 

5.どのようなミント-UI?どのように使用するには?使用するには、少なくとも3つの構成要素の名前は?

A:フロントエンドコンポーネントライブラリVUEに基づいています。NPMインストールした後、インポートスタイルのJS、vue.use(mintUi)が世界的に導入しました。単一成分の部分的な導入:「ミント-UI」からインポート{トースト}。成分A:トースト(「成功したログイン」);二つの成分:ミントヘッダー;三の成分:ミントswiper
 

6、V-モデルは、それは何ですか?どのように使用するには?VUEラベルどのように結合事象?

:あなたは、双方向結合、指令(Vクラス、V-ため、V-場合、V-ショー、V-上)を達成することができます。モデル層のVUEデータプロパティ。イベントをバインドします。<input @クリック= doLog()/>
 

そのaxios 7.何?どのように使用するには?これは、ログイン機能を達成するためのプロセスの使用が記載されていますか?

A:リクエストモジュールのバックエンドリソース。NPMがインストール-S axiosをインストールし、その後、クロスドメインの送信は、コンフィギュレーションファイルのconfig / index.jsに提供する必要があります。背景がある場合TP5は、リソース・ルーティングを定義します。jsが、その後に.getまたは.post、でインポートを使用していました。成功、失敗が.catch内の関数である場合.Then機能を返します

 

8、axios + TP5アドバンス、( 'API /ユーザー')axios.postを呼び出す操作は何ですか?axios.put( 'API /ユーザー/ 8')、それ?

A:クロスドメイン、動作するようにユーザーを追加し、操作を更新します。
 

9. RESTfulなAPIとは何ですか?どのように使用するには?

A:はい、標準API、ステートレス要求。それが設定されたリソースルーティングの最初のルーティング設定TP5ある場合、ルーティングアドレス要求は、固定されています。規格:.post .put .delete
 

10.それは何vuex?どのように使用するには?どのシナリオを使用するには?

A:状態管理のVUEフレームワーク。ストアは、main.jsに注射を導入しました。ディレクトリストア、... ..エクスポートを作成します。シーン:単一ページのアプリケーション、コンポーネント間の状態。ログインして音楽プレーヤーは、カートに入れます
 

11.何MVVMフレームワーク?これと他のフレームワーク(jqueryの)であるとの違いは何ですか?どのようなシーンのために?

A 2つを接続する、モデルビュー+ +ビューモデルフレーム、データ・モデル・モデル、ビューモデル

差:代わりに、ノードデータの動作レベルを介してディスプレイに表示するVUEデータドライバ。

シーン:より多くのデータ操作のシナリオ、より便利に
 

12、カスタムメソッド命令(V-チェック、V-フォーカス)は何ですか?そのフック関数は何ですか?どのようなフック関数のパラメータ?

:グローバル命令:ディレクティブは二つの方法のVUEのオブジェクトパラメータの内部に有し、一方がコマンド名で、さらに関数です。ディレクティブ:コンポーネント定義命令内

フック関数:バインド(結合イベントトリガー)、挿入(トリガーインサートノード)、更新(アップデート関連のコンポーネントで)

フック関数のパラメータ:エル、結合
 

13は、少なくとも4種とその使用の間でコマンドVUEを言うの?

:V-IF:非表示にするかどうかを決定する; V-用:データサイクルのうち、V-バインド:クラス:プロパティを結合; Vモデル:双方向結合
 

14.何VUE-ルータいますか?その構成要素は何ですか?

A:VUEは、プラグインのルートを記述するために使用されます。ルータリンク、ルータ、ビュー
 

15、ナビゲーションフックは何?彼らはどのようなパラメータがありますか?

:そこフックナビゲーション:/グローバルフックとフックアセンブリ内の排他的。B / beforeRouteEnter、afterEnter、beforeRouterUpdate、beforeRouteLeave

パラメータ:最も一般的に、これらのタイプで使用される(あなたが傍受していない場合は、次のルートに行くために、この機能を使用する必要があります)、(左ルーティング)から、次の(そのルートを行く)することがあります
 

16.どのような双方向の原則Vueのデータバインディング?

:vue.jsパブリッシャをハイジャックと一緒にデータを使用することである-方法モード加入者を介してObject.defineProperty()個々のプロパティをハイジャックするためにsettergetter放出され、加入者へのデータ変更が、対応するコールバック・リスナーをトリガするときにメッセージを。

具体的な手順:

最初のステップ:オブジェクト属性のサブプロパティを含むデータオブジェクトを観察する必要が再帰的トラバース、プラスすべて  settergetter
、そのように、このオブジェクトに値を割り当てるトリガするsetterには、データの変更を監視することができるであろう

ステップ2:閉じるには、ページビューをレンダリングする初期化、および更新機能に対応する各命令のノードを結合し、データが変更されることがあります一度、データを監視するための加入者を追加し、データにテンプレートを解析するコマンド、テンプレート変数置換をコンパイル、通知ビューを更新するには

加入者はブリッジとコンパイル観察者との間の通信ウォッチャーであり、主なものが行われる:第三のステップ
1を加えた独自のインスタンスに加入者属性(DEP)に
2を、自己更新()メソッドが存在しなければなりません
プロパティがdep.notice()通知を変更するまで3、update()メソッド、およびトリガーコールバックがミッションを達成次いで、結合にコンパイルして自分自身を呼び出すことができます。

ステップ4:MVVMエントリのデータバインディングなど、統合オブザーバー、コンパイルおよび3ウォッチャー、コンパイルテンプレートディレクティブでコンパイル解決するには、オブザーバーを通じて、自分のデータモデルの変更を監視するため、観察者との間建てエンドユースウォッチャーとコンパイルデータ変更の通信ブリッジ、 - >ビューの更新、インタラクティブ変更(入力)を表示 - 双方向の結合効果>データモデルの変更を。

PS:16個の質問に答えるには、「VUEデータを達成する方法です?」も同様に適しており、このインタビューの質問。

 

17、VUEのライフサイクルのご理解の下で、詳細を喜ば?

:合計が作成前に8つの段階に分かれている/した後、ロード前/更新後前/前/後の破壊の後。

あなたは/前に作成した後:beforeCreated段階では、定義されていない、まだ初期化されたデータオブジェクトとデータの要素VUEの$エルインスタンスをマウントします。作成した段階では、データオブジェクトは、データVUEのインスタンスを、$ ELは至っていません。

ロード/リアの前に:beforeMount段階で、VUEの$エルインスタンスとデータが初期化されますが、DOMが仮想ノードとしてマウントする前に、まだ、data.messageが交換されていません。取り付けられた段階では、マウントのVUE例data.messageが正常にレンダリングされた、終了します。

/リアを更新する前に:データの変更は、それがのBeforeUpdateと更新されたメソッドをトリガするとき。

破壊の後/前:destroyメソッドの実装後に、データへの変更は、もはや周期関数をトリガする、例は、この点VUEは、結合していないと、イベントリスナーならびにDOMされたDOMが、構造がまだ存在示します
 

18、パッケージコンポーネントの下VUEプロセスを言ってください!

A:まず、コンポーネントは、プロジェクト全体の開発効率を高めることができます。非効率的な維持することは困難で、再利用およびその他の問題:ページには、私たちの伝統的なプロジェクトの開発を解決するために、いくつかの独立したモジュールに抽象化することができます。

次に、コンポーネントを作成し、Vue.componentコンポーネントを登録する方法を使用Vue.extendメソッドを使用。サブアセンブリは、小道具の定義で許容するデータを必要とします。親が組み立てたいとサブアセンブリの良いデータを変更した後、データが送信されます。放出する方法を用いることができます。
 

19、どのようにのvuexを知っていますか?

A:vuex開発モデルまたはフレームワークとして理解することができます。例えば、PHPはJavaがそうで春を持ち、thinkphpています。
状態(データソース)を介して、駆動アセンブリ(中心Beanを管理するためのスプリング等IOC容器)の集中管理を変更します。

店に焦点を当てた状態で、アプリケーションレベル、状態の変化は、同期のものである、変異を提出する方法です。非同期ロジックは、アクションにカプセル化されなければなりません。
 

20.何VUE-ローダー?それは何を使用して使用しますか?

:JSモジュールに変換テンプレート/ JS /スタイルを持つローダー.vueファイルの分析。

用途:JSはES6を書くことができ、風のスタイルがSCSS以下することができ、テンプレート等、ヒスイを追加することができます
 

21は、各フォルダやファイルの利用vue.cliプロジェクトのsrcディレクトリを言ってください!

:資産フォルダは静的リソースを入れて、コンポーネントは、コンポーネントに配置され、ルーティング関連ルータは、コンフィギュレーションで定義され、ビューのビューを、app.vue主成分アプリケーションである、項目ファイルがmain.jsあります
 

22、カスタムコンポーネントを使用する方法でvue.cli?どのような問題あなたは遭遇してきましたか?

A:最初のステップ:コンポーネントのディレクトリにコンポーネントファイル(smithButton.vue)を作成し、スクリプトは{デフォルトをエクスポートする必要があります

第二段階:「../components/smithButton.vue」からインポートsmithButton:に必要なページ(成分)を導入

第三段階:上記サブアセンブリコンポーネントプロパティVUEに注入し、コンポーネント:{} smithButton

第四ステップ:テンプレートビューのビューで、<スミス・ボタン> </スミス・ボタン>
問題:smithButtonスミス-ボタンで使用されるときの名前。
 

23、テンプレートコンパイルVue.jsさんのご理解について話?

:最初のツリーにAST、要するに、その後、レンダリング機能がVNODE(Vueの仮想DOMノード)を返します

詳細手順:

まず、テンプレート・コンパイラは、ASTコンパイル構文木(ソースコードである抽象構文木表現構造の形で抽象構文木)をコンパイルcreateCompiler戻り値をコンパイルするために、createCompilerコンパイラを作成するために使用されます。さらにまた、合併オプションを担当してコンパイルします。

その後、ASTが生成されます後、機能をレンダリング与える戻り値がvノードでレンダリングする(ASTは、構文木の目的球文字列を変換するプロセスをレンダリングします)、vノードVueのは、仮想DOMノードである、など(タグ名、子ノード、テキストがあります等)が

挑戦する:
1、応答VUE原理を?
2、VUE-ルータの実装原理?
3、なぜ我々はVUE投票すべき?他のフレームワークの利点と欠点とは対照的に?
4、どのように親子通信コンポーネント、ならびに非親子通信コンポーネントを実装するVUE?
angularjsの差vuejsと5、及び反応しますか?
6、vuexを行うために使用されていますか?
7、VUEソース構造

 

 

第二部

1.ライフサイクルVUEとは何ですか?  

ライフサイクルのVUEの破壊と呼ばれる一連のプロセスから作成されるVUEインスタンス。創造の初めからで、初期化データ、コンパイルされたテンプレートは、DOM→レンダリング、更新、レンダリング、およびプロセスをアンロードのシリーズをマウントします。

機能は何2.axios

 

  1. axiosは、すべてのAPIの約束をサポートしているHTTPライブラリの約束に基づいています
  2. これは、要求と応答を傍受することができます
  3. これは、要求データおよび応答データの内容を変換することができ、応答が戻って自動的にデータ型JSONに変換します
  4. それは、より安全で、クライアントのサポート防衛XSRF

伝統的な価値観にどのように3.vue親コンポーネントのサブアセンブリ?

支柱によって親サブアセンブリコンポーネントに送信すべきデータ

VUEの参照リンク

4. VUEの特定の使用を理解して言ってください。

私は(VUE特定の使用をお願いしたり、それを使用してのVUE長所と短所を尋ねる?)最後にタイトルを依頼するのか分かりません

コンポーネント?どのようにネストされたルートの定義である5.activeクラスのプロパティ?

VUE-ルータモジュールルータリンクアセンブリ

コードをコピー
1つのCONSTルート= [   
2 {パス"/"、リダイレクト: "/ホーム"}、//重定向、指向了ホーム组件   
3 {   
4パス: "/ホーム"、成分:家、   
5人の子供:[   
6 {パス: "/ホーム/ゲーム"、成分:ゲーム}   
7]   
8}   
9]
コードをコピー

 

6.パラメータおよび内部機構の使用に焦点を当て、()を使用するソート方法をソートjavascript配列を回しますか?

構文:arrayObject.sort(SORTBY)

パラメータは関数でなければならない、あるいは、所定のソート順をSORTBY

注:呼び出しメソッドパラメータ、ソートする文字符号化順序がない場合、これを達成するために、配列の最初の要素は、比較のために列に変換されなければなりません。

あなたが他の基準に従ってソートする場合、それは、二つの関数の値を比較するために、2つの比較機能を必要とし、その後、これらの2つの値の相対的な順位を説明するための番号を返します。比較関数は、以下のように、戻り値は、二つのパラメータA、Bを有していなければなりません。

<B場合は、0より小さい値が返されます。

= bの場合は、0を返します。

> Bならば、それは0より大きい値を返します。

7. DESCRIPTION差DIV要素とspan要素

DIVは、ブロックレベル要素であり、スパンはインライン要素です。ラップの前と後に追加された要素に対応するインラインブロック要素。ブロック要素は同一の要素を埋め込まれる、インライン、埋め込み要素にディスプレイが定義する:実際には、ブロック要素とインライン要素は、静的な限りブロック要素がディスプレイを画定するようでないブロックは、ブロック要素となります。

8. XHTMLコンテンツ仕様は、いくつかの(少なくとも3つ)と言います

 

  1. すべてのタグは、対応する終了タグを持っている必要があります
  2. すべてのタグの要素と属性に名前を小文字でなければなりません
  3. すべてのXMLタグが適切にネストする必要があります
  4. すべての属性値は引用符「」二重引用符で囲む必要があります
  5. 特殊記号と&エンコーディングによって表されるすべての<
  6. すべての属性に値を割り当てます

9.あなたはいくつかの簡単なWeb標準を知っていることを知っているウェブ標準化(または再構築サイト)の関連知識を教えてください。

構造(Structrue)、パフォーマンス(プレゼンテーション)と行動(行動):メインページは3つの部分があります。Web標準に対応することも、3つの領域に分割されています。

 

  1. XHTMLやXMLなどの構造化言語標準、;
  2. 性能基準は、CSSを含めます
  3. 等、ECMAScriptの、(例えばW3C DOMのような)行為を含むオブジェクトモデルの基準

何10.localstorageとそののsessionStorage?違いは何ですか?

localStorageとのsessionStorageは一時的なストレージクライアント情報オブジェクトとして使用されている、彼らは唯一の店舗の文字列型のオブジェクトであります

localStorageライフサイクルは、ユーザーがブラウザによって提供UI上のlocalStorage情報を、クリアしない限り、そうでない場合は、この情報が常に存在することを意味しており、永久的です。

現在のウィンドウやタブののsessionStorageライフサイクルウィンドウまたはラベルが永久的に閉じられると、のsessionStorageによって保存されているすべてのデータも消去されます。

localStorageを別のブラウザは、情報またはのsessionStorageを共有することはできません。同じのlocalStorage共有することができます別のページ上の同じブラウザ(ページには、ドメイン名とポートと同じに属している)が、別のページやラベル間のsessionStorageを共有することはできません。タブは、彼らがページに属している複数の相同IFRAMEタグが含まれているので、彼らはのsessionStorage間で共有することができた場合のページとラベルは、トップレベルウィンドウのみを指すことに留意されたいです。

 

 

11.プロパティ要素の値を取得する方法

element.getAttribute( '属性名')

12は、イベントの代表団が何であるかを示して?

イベント参加者はバブリングの原理を使用することで、イベントが親要素や祖先要素に追加され、実行効果をトリガー

コードをコピー
1 <UL ID = "UL1"> 
 2 <LI> 111 </ LI> 
 3 <LI> 222 </ LI> 
 4 <LI> 333 </ LI> 
 5 <LI> 444 </ LI> 
 6 </ UL> 
 7 <スクリプト> 
 8 window.onload =関数(){ 
 9 VARのOUL =のdocument.getElementById( 'UL1')。
10 oUl.onclick =関数(EV){ 
11 VAR EV = EV || window.event; 
12 VARターゲット= ev.target || ev.srcElement; 
13 IF(target.nodeName.toLowerCase()== 'リー'){ 
14アラート(ターゲット。
コードをコピー

 

 

差13.jsonとJSONP?

スクリプトコードが返されるJSONP(関数呼び出しを含む)のJSON JSONは、文字列形式のデータを返します

フルネームJSONPは、他のサイトは、JSファイルにパッケージ化JSON上を通過、つまり、に要求できるようにJSONオブジェクトにあるが、JS構文に沿った形に包まれ、パディングとJSONと呼ばれます。

おすすめ

転載: www.cnblogs.com/chenzxl/p/11716594.html