私たちは歴史を変えることはできませんが、我々は未来を変えることができる - 。彼らが見ている場所を忘れて
ハンズ
最近、Vueの開発を使用して、と総括しないように非常に深刻な期間が、これは少数を示すために、自分のポイントにちょうどより深い印象です。
ルータのキー
ヴューは、例えば/ページ、同じ構成要素を再利用するので?ID = 1 => /ページ?ID = 2このようなジャンプは、成分は、典型的には、溶液で、等、作成した実行フック関数を実装することはないであろう次の通りです。
時計
watch: {
$route(to, from) {
// XXXX
}
}
ユニークキーにルータビューバインド
// $route.fullPath: 完成解析后的 URL,包含查询参数和 hash 的完整路径
<router-view :key="$route.fullPath"></router-view>
:の主要なネットワークの定義はできるものの原則を教えてくださいお勧めしませんまったく同様のシーンが存在しない場合https://cn.vuejs.org/v2/api/index.html#key、もちろん、すべての後に、まだたびにレンダリングを支払わなければなりませんDiudiuのパフォーマンスコスト。
$ ATTRS
多くの人々が知っていることと、Googleはに多くの人々と財産、私はまた、カスタム入力コンポーネントを実装しています。
公式の説明:(クラスやスタイルを除く)結合特性親スコープが小道具として認識(および取得)することはないが含まれています。コンポーネントは、親スコープは、結合(とクラススタイルを除く)のすべてが含まれます任意の小道具を、宣言していない、とvバインド=「$ attrsに」着信内部コンポーネントすることができたとき-あなたはハイレベルのコンポーネントを作成するときに非常に便利。
例:
<template>
<input
class="u-input"
v-bind="$attrs"
@input="handleInput"
@focus="handleFocus"
@blur="handleBlur"
@change="handleChange"
>
</template>
これは、直接、小道具の束を定義する必要がすべての着信入力アセンブリアセンブリのパラメータを参照することができないV-バインド=「$ ATTRS」を使用して簡単な入力デバイス・パッケージです。
エラートラップ
一般的には、私たちの目的は、一般的なエラー処理のエラーをキャッチするために、または取得フロントエンドのエラーログにそうするよりも、より多くの何もしないことです。
だから、どのように我々はそれが間違っているのVueをキャプチャするのですか?
グローバルキャプチャ:のErrorHandler
ErrorHandler:不明なエラーレンダリングし、視聴中に指定されたコンポーネントを取り扱います。ハンドラが呼び出されると、エラーメッセージとVueのインスタンスを取得することがあります。
具体的な使用方法:
Vue.config.errorHandler = function (err, vm, info) {
// handle error
}
コンポーネントキャプチャ:errorCaptured
errorCaptured:アセンブリの息子から間違いをキャプチャが呼び出されたとき。エラーオブジェクト、エラーコンポーネントインスタンスの発生やエラー情報源を含む文字列:このフックは、3つのパラメータを受け取ることになります。このフックはエラーが上向きに広がり続け防ぐためにfalseを返すことができます。
errorCapturedは、フック関数で、場合にもエラーがグローバルにErrorHandlerをキャッチされ、広がりを停止するので、これは自然のトライキャッチで多少似て、リアルタイム処理エラーのために、より適していませんでした。
概要
ここではいくつかの簡単なレコードは〜あなたが間違った場所を持っている場合、私にメッセージを修正するために歓迎し、自分自身の経験の開発プロセスを理解していない、あります