1. はじめにVue プロジェクトの開発では、時間のフォーマット、ファイルのダウンロード、オブジェクトのディープコピー、データ型の戻り、テキストのコピーなど、異なるコンポーネントページで同じメソッドが使用されるシナリオが必ず存在します。このとき、よく使われる機能を抽出し、グローバルに利用できるようにする必要があります。では、グローバル環境で使用できるツール関数クラスをどのように定義すればよいでしょうか?詳細は下記をご覧ください。 PS: この記事ではvue 2.6.12を使用しています 2. 最初の方法Vueインスタンスプロトタイプに直接追加する まずmain.jsを開き、importで定義された共通メソッドutils.jsファイルをインポートし、次にVue.prototype.$utils = utilsを使用してVueインスタンスに追加します。 'vue' から Vue をインポートします './App.vue' からアプリをインポートします。 './router' からルーターをインポートします './store' からストアをインポートします './utils/Utils' から utils をインポートします Vue.prototype.$utils = utils 新しいVue({ ルーター、 店、 レンダリング: h => h(App) }).$mount('#app') その後、コンポーネントページで使用する必要がある場合は、これを使用します。$utils.xxx メソッド: { 関数() { time = this.$utils.formatTime(新しいDate()) とします。 } } 欠点:
アドバンテージ:
公式ドキュメント 3. 2番目の方法webpack.ProvidePluginを使用してグローバルにインポートする まず、vue.configにwebpackとパスを導入し、module.exportsのconfigureWebpackオブジェクトにプラグインを定義し、必要なjsファイルを導入します。 完全な vue.config.js 構成は次のとおりです。 定数ベースURL = process.env.VUE_APP_BASE_URL 定数 webpack = require('webpack') const パス = require("パス") モジュール.エクスポート = { パブリックパス: './', 出力ディレクトリ: process.env.VUE_APP_BASE_OUTPUTDIR、 資産ディレクトリ: '資産', 保存時にlint: true、 プロダクションソースマップ: false、 Webpack を構成する: { 開発サーバー: { オープン: 偽、 かぶせる: 警告: 真、 エラー: true、 }, ホスト: 'localhost', ポート: '9000'、 hotOnly: 偽、 プロキシ: { '/api': { ターゲット: ベースURL、 安全: 偽、 changeOrigin: true, //proxypathRewrite を開く: { '^/api': '/', }, }, } }, プラグイン: [ 新しい webpack.ProvidePlugin({ UTILS: [path.resolve(__dirname, './src/utils/Utils.js'), 'default'], // 定義されたグローバル関数クラス TOAST: [path.resolve(__dirname, './src/utils/Toast.js'), 'default'], // 定義されたグローバル Toast ポップアップ ボックス メソッド LOADING: [path.resolve(__dirname, './src/utils/Loading.js'), 'default'] // 定義されたグローバル Loading メソッド }) ] } } このように定義した後、プロジェクトに ESlint がある場合は、定義されたグローバル関数クラスのプロパティ名を有効にするために、ルート ディレクトリの .eslintrc.js ファイルに globals オブジェクトを追加する必要もあります。そうしないと、プロパティが見つからないというエラーが報告されます。 モジュール.エクスポート = { ルート: true、 パーサーオプション: { パーサー: 'babel-eslint'、 ソースタイプ: 'モジュール' }, 環境: { ブラウザ: true、 ノード: true、 es6: 本当、 }, 「グローバル」:{ 「ユーティリティ」:true、 「トースト」:真、 「ロード中」: true } // ...ESlint 設定の N 行を省略します} 定義したら、プロジェクトを再起動して次のように使用します。 計算: { 再生回数() { 戻り値 (数値) => { // UTILS は定義されたグローバル関数クラスです const count = UTILS.tranNumber(num, 0) 戻り数 } } } 欠点:
アドバンテージ:
公式ドキュメント 要約するこれで、vue グローバル メソッドを構成する 2 つの方法についての説明は終了です。vue グローバル メソッドの構成の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: Ubuntu インストール cuda10.1 ドライバ実装手順
この記事では、タブ切り替えを実装するためのVueの具体的なコードを例として紹介します。具体的な内容は...
1. floatの基本的な使用例1. まず 2 つの div ボックスを作成し、高さ、幅、背景色を設...
MySQL はインストールが簡単で、高速で、豊富な機能を備えています。これはオープンソース運動のベン...
目次HBuilderX での ESLint プラグインのインストールカスタム eslint-js ル...
目次1. インストール前の準備、インストールパッケージのダウンロード1 インストールの準備2 インス...
1. テーブル構造 2. 表データ 3. クエリのteacher_nameフィールドは空にすることは...
最近、個人のウェブサイトを書き直しました。Alibaba Cloudで新しいサーバーを購入しました。...
Nginx の書き換え機能は、リダイレクトと同様に、URL アドレスを一時的または永続的に新しい場所...
目次1. 百度百科事典1. MySQL 2. PostgreSQL 3. MySQL に対する Po...
CSS 属性セレクターは素晴らしいです。大量のクラス名を追加することを回避し、コード内の問題を指摘す...
この実験では、空のデータベース、オフライン、オンラインの 3 つのモードで、1 つのマスターと 2 ...
<br />一般的に、「標準的な Web ページ」のファイル構成は XHTML CSS ...
多くの場合、クエリの結果は最大で 1 つのデータ レコードになることが予想されます。この場合、制限 ...
IE 8 以降では互換モードが追加され、これを有効にすると IE の下位バージョンでレンダリングされ...
目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...