ASP.net Core + Vue.js + typescript な SPA Starter kit

ASP.net Core + Vue.js + typescript な SPA Starter kit

概要

タイトルの通り、ASP.net Core を MVC フレームワークとして使い typescript で vue.js を利用した SPA (SinglePageApplication) を構築するプロジェクトの Starter kit を作ってみました。
既にいくつか starter kit はあったのですが、package.json に特に利用していないものが入っていたりする場合があったので、最小構成(たぶん)で作っています。

ソース

https://github.com/nrslib/ASPNet-Vuejs-SPA-Typescript-starter

解説

ASP.net Core で構成されています。.net Core のバージョンは 2.0 です。
front ディレクトリを Client 用のディレクトリにしています。もしもディレクトリ名などを変更したい場合は、webpack.config.json に記述されている front を文字列置換してください。
front/views/sample/components/next/Next.vue で axios を利用した get と post 処理をしています。参考になるかと思います。
ついでに、コンポーネントが作られる前に通信するパターンと、コンポーネントが作られてマウントされた直後に通信するパターンも実装しています。
合わせてご参考ください。

ビルド実行

VueWithTypeScriptのフォルダで以下コマンドで起動できると思います。

npm install
npm build
dotnet run

もちろん Visual studio 上から実行しても構いません。

package.json


導入しているパッケージは以下の目的に分けられます。

◆vue.js のため

  • vue
  • css-loader

◆SPA のため

  • vue-router

◆typescript のため

  • vue-class-component
  • vue-property-decorator
  • ts-loade
  • typescript

◆通信処理のため

  • axios

webpack.config.json


bundle された js は wwwroot/dist 直下に配置されるようになっています。
webpack のバージョンは執筆時点での最新で構成しています。
VueLoaderPlugin を require しないと動かなかったりします。
css-loader はまだ登録していないので、必要になったら登録してください。

vue.jsカテゴリの最新記事