表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

41/210

画像の使用とツール系関数などを別ファイルにまとめる

色々覚えることが多いです。


ただ、ちゃんとしたやり方かは、余り自信は無いですが・・・


1.画像の使用


例えば、サイコロの目など画像を使用したくなる時があります。


以下のサイトが参考になりました。


Ionic 入門

画像の配置場所

https://ionic.keicode.com/basics/image-location.php


こんな感じに使います。


------------------------------------------

<img src="../../assets/cube1.gif" class="imgDice">

------------------------------------------


class="imgDice"は枠線を表示するのに使いました。


C:\MyTest\GameBook\src\app\home\home.page.scssに追加

------------------------------------------

.imgDice{

border:1px solid #000

}

------------------------------------------


\home.page.scssの初使用ですね。(もう少し出番はあるはずです)


実装時には、1~6のサイコロ画像を用意して、*ngIfで出た目をのみを表示させるのが簡単と考えています。


2.関数のお引越し


Angularの機能を使うと、意外に関数コードは長くならない予感もしますが、ゲームブック本体に関係ない関数や汎用的に使える関数は、別なファイルに置いた方が判りやすいと思います。


今までの例で言えば、Page.jsonからプロパティ定義や読み込み関数を出力する”fnMakePropertyAndFunction”が引越し対象ですね。


手順としては、


・関数をまとめたファイルを置くフォルダの用意

・そのフォルダに新規ファイルを作る

・そのファイルに関数を書く

・src\app\home\home.page.tsでそのファイルの使用関数をImportする


となります。


新規フォルダと新規ファイルの作成はVisualStudioCodeで作るのが良いかも?

(特にファイルは、そのまま関数を書くので)


ごく簡単なサンプルを書きます。


関数を書いたファイル

C:\MyTest\GameBook\src\app\home\MyWork\tool.ts

------------------------------------------

export function TestMyTest() :void{

alert("a");

}

export function TestMyTest2() :void{

alert("b");

}

------------------------------------------


ポイントは”export function ”を付けて外部で使う関数と明示させることですね。


\home.page.tsでのインポート部分

------------------------------------------

import {TestMyTest, TestMyTest2} from '../home/MyWork/tool';

------------------------------------------

使う関数をすべてimportします。fromの部分にtool.tsの"ts"が無いですが、入力補助機能を使うと気づく事も無いと思います。


なお使われていない関数は薄暗い色で、カーソルを上に置くと次のエラー表示が出ます。

『'TestMyTest2' が宣言されていますが、その値が読み取られることはありません。ts(6133)』


\home.page.tsでの使用部分

------------------------------------------

TestMyTest();

------------------------------------------


\home.page.tsで宣言したのと同様に使えます。

(正確には\home.page.tsで宣言した時に必要な"this."が無くなります。)


※注意

\MyWork\tool.ts内に、”fnMakePropertyAndFunction”を引っ越した場合、


\MyWork\tool.tsの中でも、Page.jsonのインポートが必要です。


\MyWork\tool.ts内に以下のコードをお忘れなく!

------------------------------------------

import PageData from 'src/app/MyData/Page.json';

------------------------------------------



3.クラスも・・・


関数だけでなく、大量のプロパティ定義もやりようによっては外部に移せそうですが、今回は見送りです。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ