vue.js + typescriptの書き方

ここで良くまとまっていた。vue-class-componentより、vue-property-decoratorの方が良いよ!って話かな?実際ASP.NET Core with Vue.jsのテンプレートはvue-property-decoratorを使っている。この2つの使い分けとか良く分かってないのは確か。

qiita.com

 

んで、vue2.5以降ならさらにその書き方も古いってことになるんだと思った。

kuroeveryday.blogspot.com

 

あとココも結構良い。

itexplorer.hateblo.jp

 

dataの中で型が宣言出来ないと思った。解決はココ。

qiita.com

 

最新なのがココ。

qiita.com

 

 

Javascriptでクッキーの扱い

クッキーの扱いは、書き込みは楽、読み込みは面倒。

 

document.cookieに対してkey,valueを入れてやれば書けるので、document.cookie = 'key=value';でOK。

 

読み込みはdocument.cookieで取得出来るけれど、それは設定されている値がリストで全部返ってくるので、自分で分割してやる必要がある。空白入っているのでtrimを忘れずに入れたりと。詳しくはここに。読み込みは連想でやれれば楽なんだけどなー。

Cookieに書きこまれたデータを読み込む (JavaScript プログラミング)

ASP.NET Core にSwaggerの設定

MSDNが一番詳しいかなー。Swaggerをサクッと作っとくとチェックとかにも結構便利。xmlを出力するんだけど、チェックすると警告が増えることがちょっとウザい。

docs.microsoft.com

 

接続文字列の設定はこっち。これもMSDN

接続文字列の EF コア | Microsoft Docs

 

enumが数字になってしまうので、

stackoverflow.com

ASP.NET Core with Vue.jsでbootstrapを4にしたい。

package.jsonにバージョンが書かれているのでこれを4に上げれば終わりかと思ったら、凄く苦労した。

 

まずはpackage.jsonを変更。バージョンを勝手に教えてくれる。これ凄い!

"bootstrap""^4.1.2",

キャレット(^)ってなんだ?と思ったのでpackage.jsonのルールを確認。

qiita.com

 

これでVSビルドしてもまだ上がらない。色々見ていたら依存関係のNPMの中のbootstrapのバージョンが上がっていない。

f:id:binnmti:20180722072324p:plain

 

上げ方を調べたら以下に書いてあった。

qiita.com

npmの再更新は以下。ところが失敗する。npmのバージョンが6より古いみたい。 

pacakge.jsonを右クリックし「パッケージの復元」を選択すると、再インストールできます。

 

バージョン上げるのは嫌なので、昨日入れたnode.jsにつなげば良いかなーと思って設定を調べる。以下に足せばOK。ところがnode.js変えてもうまく動かない。

stackoverflow.com

 

結局、stackoverflowをみて「C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Web\External」に入っていることは分かったので、こっちを上げる。正しい上げ方も結局分からず、コマンドでアップデートも上手く上がらなかったので、node.jsのnpmを上書き。なんか嫌なやり方だなと思いつつ一応上手くいった。

 

でも、まだbootstrapの依存関係でエラー。package.jsonにpopperがない。bootstrapにそんなの必要だっけ?と思いつつ、popper書いてもまたエラー。依存関係のNPMの中で直接「パッケージの更新」してやったら上手くいった。bootstrapもはれて4.1.2。ところが実行してやると、まだ使っているのはbootstrap3。なんでやねん!

 

色々見ていると実行した場合bootstrap.cssを直で使っているわけではなく、vendor.cssにまとめられている。じゃあvender.cssをアップデートするのは?ほんとに分からないことだらけだ。

 

これはwebpackが関係しているようで、webpack.config.jsでBundler & MinifierのRe-bundle Fileしてもやっぱり作れない。

f:id:binnmti:20180722082529p:plain

 

結局webpackを更新するためにbundleconfig.jsonやらgulpfile.jsやらその都度設定を調べて、バージョンアップして、タスクランナーエクスプローラーも使ってみて、色々試したけれど、結局更新できず。

 

その後アドバイスをもらってwebpackを直接叩けば良いのではと言われて、以下をやったらやっとvendor.cssが更新された。

node_modules\.bin\webpack --config webpack.config.vendor.js

 

で、無事bootstrap4になった。ふー。

 

Visual StudioのVue.jsのテンプレート「ASP.NET Core with Vue.js」

tsubalog.hatenablog.com

↑ここを参考にしたのですが、2.0系でもASP.NET Core with Vue.js がなかった。

 

stackoverflow.com

で、探したら、コマンドライン叩いたら出てくるってさ。以下です。 

Install the SPA (Single Page Application) templates provided by Microsoft:

dotnet new --install Microsoft.AspNetCore.SpaTemplates::*

 

でも、コマンドラインからしか作れない?VS上にはでなかった。。

f:id:binnmti:20180720235144p:plain

 

コマンドラインで以下で作れます。名前指定したかったら[-n]で。

dotnet new vue

 

その後コンパイルが通らないと思ったらnode.jsが入っていないせいだった。入ってなかったのか。。。

 

で、やっと出来たテンプレート起動して、cshtmlに日本語打ったら化けた。理由はcshtmlがSJIS。マジか。そして馬鹿か。保存しなおす方法が分からなかった

nekko1119.hatenablog.com

 

あと、またデバッグ起動したら、10秒ぐらいで落ちるようになった。なんだこれ。マジで。「デバッグなしで開始」するで落ちなくなる。

Vue.jsはじめました

最初に公式サイトを見る。とても分かりやすい。

jp.vuejs.org

 ただ、操作環境として以下を進めているけれど、

Vue.js を試すには、JSFiddle Hello World example が最も簡単です 

以下の所でつまづいた。

ブラウザの JavaScript コンソールを開いて、app.message の値を変えてみましょう。  

結局自分のローカルに環境作ってF12でやったら出来た。こんなことが出来ることも知らなかったぐらいJSは分かってない。 

 


 次にとほほのページ。公式サイトの次に読むと良いと思う。とても情報の密度が高い。

Vue.js入門

 

特に以下のようなシンタックシュガーが書いてあったのが良かった。{{}}はあまり書きたい書き方じゃないなーと思っていたよ。

  <div v-text="message"></div>   <!-- この行と -->
  <div>{{ message }}></div>      <!-- この行は、同じ意味を持ちます --> 

 


で、今はここを読んでいる。 

blog.brainpad.co.jp

 


ドットインストールはVue.jsが有料なのがとても残念。。。

https://dotinstall.com/lessons/basic_vuejs_v2