LoginSignup
4
1

More than 5 years have passed since last update.

Blazor0.5.0-preview1-10328付近での変更内容

Posted at

過去に作ったもの

前回作成したときは0.1.0のテンプレを元に0.2.0でも一応動いていた物でしたが、割かし破壊的な変更が多かったため、軽くメモっておこうと思います。
以下は以前の
* 1準備編
* 2実装編
* 3実用っぽいの編

変更対応

Blazorはかなり頻繁に更新しており、時々破壊的な変更が入ります。そのため、せっかく作ったプロジェクトを毎回作り直しは面倒なので何とか変更して対応していっているのでどないしたのかっていうメモです。
変更を一通り反映させたものはソース(GitHub)にあります。使い方が変わったものはBlazorのソースを一式落としてから探し出していますので、やっちゃまずいやり方があるかもしれません。

プロジェクトの設定

これは、拡張機能を最新へ更新してから新規プロジェクトを作成して、プロジェクトの右クリックメニューでプロジェクトファイル(ファイル名が表示されています)の編集で中を見ます。
おおむね、「」あたりをコピペして上書きしてから開きなおすとある程度何とかなります。
ビルドが通らない場合はルートの「_ViewImports.cshtml」にある@using ~を一通り見比べて自分が追加したもの以外をそろえると良いかと思います。

0.2.0から変更されて0.3.0で新しい文法しか使えなくなったもの

ボタンのクリックイベントやデータのバインドですが、@onclick(イベントハンドラ)onclick="@イベントハンドラ"に、@bind=変数名bind=変数名に変わりました。他にも変わった気がしますがこれが大きなトピックかな?

0.5.0に変わった直後あたりでの変更

Pagesディレクトリのコンポーネントを別ページ内に埋め込むとビルドエラーになりました。埋め込む場合はSharedに持って行ってそれだけのページが欲しい場合はから枠ページを用意して埋め込めってことなのかもしれません。

0.5.0のpreview1-10320からpreview1-10328の間の変更

JsonUtilが非推奨になりました。また、JavaScriptで登録したメソッドを呼ぶ形から、window.~でメソッドを用意してJSRuntime.Current.InvokeAsync<T>で呼び出すようになりました。非同期じゃない呼び方はあるにはあったんですが、キャストしてInvokeを呼び出すみたいでまた変更が入るような気がしなくもないです(ひょっとしたら別クラスのメソッドで同じように呼べるのかもしれませんが)。ちなみにPullRequestの#1033「JavaScript interop v3」での変更のようです。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1