VueでTypescriptの設定手順を使用する

VueでTypescriptの設定手順を使用する

vue3.0、react、angularなど、様々なフロントエンドフレームワークの開発を通じて、フレームワークのソースコードはすべてts(typescript)で書かれているため、今後の中規模・大規模プロジェクトの開発動向もtsと切り離せないものになると感じています。そのため、いくつかの入門チュートリアルに従って、vue と ts を組み合わせて使用​​したドキュメントを作成しました。これは、vue + ts プロジェクトの構成を開始するのに適しています。

1. TypeScriptが古いVueプロジェクトに導入される

npm インストール vue-class-component vue-property-decorator --save
npm で ts-loader typescript tslint tslint-loader tslint-config-standard --save-dev をインストールします。

vue-class-component : vue を拡張して TypeScript をサポートし、宣言的な方法で ts をサポートします。

vue-property-decorator : vue-class-component に基づいてより多くのデコレータを拡張します

ts-loader : webpack が ts ファイルを認識できるようにします

tslint-loader : tslint はファイルのエンコーディングを制限するために使用されます。インストールしてもしなくてもかまいません。コードの標準化に役立つため、インストールすることをお勧めします。

tslint-config-standard : tslint は標準スタイル制約を設定します。これは ts コード スタイルの標準化にも使用されます。

注:この ts のインストール方法は、元の vue プロジェクトの Js 構文を Ts に変更することです。詳細な手順については、https://www.jb51.net/article/230703.htm を参照してください。このブログでは、vue.config.js または webpack.base.conf の下位バージョンでの ts 構文の構成サポートが完全には示されていないため、次のように変更しました。

// ファイルプラグインの設定の場合は、configureWebpack オブジェクトに記述する必要があります。
モジュール.エクスポート = {
    Webpack を構成する: {
        解決: { 拡張子: [".ts", ".tsx", ".js", ".json"] },
        モジュール: {
            ルール:
                {
                    テスト: /\.ts$/,
                    除外: /node_modules/、
                    強制: 'pre'、
                    ローダー: 'tslint-loader'
                },
                {
                    テスト: /\.tsx?$/,
                    ローダー: 'ts-loader',
                    除外: /node_modules/、
                    オプション:
                        追加Tsサフィックス: [/\.vue$/],
                    }
                }
            ]
        }
    }
}

Vue+Typescript プロジェクトをゼロから作成する

この方法は比較的簡単です。コマンドvue create app-name以下の手順に従ってください。

ここに画像の説明を挿入

ここに画像の説明を挿入

2 番目のステップでは、上記のオプションを選択するだけです。ターミナルでスペース バーを使用して選択し、選択後に Enter キーを押します。オプションの意味は次のとおりです。

 (*) Babel //ES6 から ES5
 (*) TypeScript //tsを使用する
 ( ) プログレッシブ ウェブ アプリ (PWA) サポート //プログレッシブ ウェブ アプリ (*) ルーター //ルーティング (*) Vuex //状態管理 (*) CSS プリプロセッサ //CSS 前処理 (*) リンター / フォーマッタ //仕様タイプ ( ) ユニット テスト //テスト ( ) E2E テスト //テスト

次のステップの構成の詳細は次のとおりです。

クラススタイルのコンポーネント構文を使用しますか? (Y/n) クラススタイルのコンポーネント構文を使用しますか? Yと入力してEnterキーを押します TypeScriptと一緒にBabelを使用します(モダンモード、自動検出されたポリフィル、トランスフォームに必要)
積み重ねJSX)? (Y/n) BabelとTypeScriptを使用していますか(モダンモード、ポリゴン塗りつぶしの自動検出、トランス必須(JSX) Yを入力 ルーターに履歴モードを使用しますか? (製品でインデックスフォールバックを行うには適切なサーバー設定が必要です)
ion) (Y/n) 履歴ルーティングモードを使用しますか? N を入力して Enter キーを押します。 CSS プリプロセッサを選択します (PostCSS、Autoprefixer、CSS モジュールはデフォルトでサポートされています) 通常、Sass/SCSS (node-sass を使用) を選択します。

リンター/フォーマッターの設定を選択します: (矢印キーを使用): 構文検出仕様を選択します。通常、最初のESLint(エラー防止のみ)がデフォルトです。ただし、tsを使用する場合は、TSLintを選択できます。

追加の lint 機能を選択します: (選択するには押す、すべてを切り替えるには押す、選択を反転するには押す) [保存時にチェック] / [送信時にチェック] を選択します 通常、開発中は保存時に最初のチェックを選択します Babel、PostCSS、ESLint などの構成をどこに配置することを好みますか? (矢印キーを使用) 構成情報を個別に保存するか、package.json に保存するかを選択します 通常、最初のものがデフォルトで選択され、プラグイン構成は別のファイルに保存されます 将来のプロジェクトのためにこれをプリセットとして保存しますか? (y/N) 次回プロジェクトを作成するときに再度選択しなくても済むように、プリセットとして保存しますか? N と入力して Enter キーを押します

上記のオプションを完了すると、プロジェクトは正常にビルドされ、プロジェクト ディレクトリは次のようになります。

ここに画像の説明を挿入

vue.config.jsファイルを自分で作成し、プロジェクトのルート ディレクトリに配置する必要があります。

これで、vue で typescript 構成を使用する手順に関するこの記事は終了です。より関連性の高い vue typescript 構成コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue と TypeScript を統合するための最も簡単なチュートリアル (推奨)
  • Vue2 Vue-cliでTypescriptを使用するための詳細な設定

<<:  MySQL のストアド プロシージャを使用して 100 万件のレコードをすばやく生成する方法

>>:  VMWare仮想マシンのcentosの時間が現地時間と矛盾する問題を解決する

推薦する

Vue で eslint 検出をオフにする方法 (複数の方法)

目次1. 問題の説明2. 問題解決1. 問題の説明Vue プロジェクトを開発する場合、作成時に誤って...

Mysql 主キー UUID と自動増分主キーの違いと利点と欠点

導入私はしばらくの間、postgresql データベースを使用していました。クラウドに移行した後、自...

CSSを使用して3Dフォトウォール効果を作成する

CSS を使用して 3D フォト ウォールを作成します。具体的なコードは次のとおりです。 <!...

Linux における「!」の知られざる使用法のまとめ

序文実際、Linux では、控えめな「!」が驚くほど多くの用途で使用されています。この記事では、「!...

Linuxファイルシステム操作の実装

この読書ノートでは、主にファイルシステムに関連する操作を記録します。ディスクとディレクトリの容量ディ...

htmlダウンロード機能の詳しい説明

新しいプロジェクトは基本的に終了しました。フロントエンドとバックエンドを分離して統合を完了したのは初...

Nginxポーリングアルゴリズムの基本的な実装方法の詳細な説明

ポーリングアルゴリズムの紹介多くの人が職場で nginx を使用しており、その設定に精通しています。...

HTTP および HTTP コラボレーション Web サーバー アクセス フロー図

Web サーバーは、独立したドメイン名を持つ複数の Web サイトを構築できるほか、通信経路上のトラ...

MySQL で特定の親行のすべての子行を見つけるソリューション

序文注: テストデータベースのバージョンはMySQL 8.0ですテーブルを作成し、ユーザー scot...

MySQL の連結で複数の一重引用符と三重引用符を使用する際の問題

文字列を動的に連結する場合、文字連結を使用することが多いです。次のような連結の引用符の意味がわかりま...

IE5.0以降のHTCコンポーネントの定義の概要

Microsoft IE 5.0 がリリースされる前は、Web プログラミングにおける最大の課題は、...

MySQL 8.0.18コマンドの詳細な説明

解凍したフォルダ C:\web\mysql-8.0.11 を開き、フォルダ内に my.ini 構成フ...

グリッド共通レイアウトの実装

両側に隙間なし、各列間に隙間あり 幅: 100%; 表示: グリッド; グリッドテンプレート列: r...

Vue+video.jsはビデオプレイリストを実装します

この記事では、ビデオプレイリストを実装するためのvue + video.jsの具体的なコードを参考ま...