2
0

More than 5 years have passed since last update.

3 step wallet を作成した話 その3 〜とりあえずの達成感〜

Posted at

エンジニアじゃないけどアプリが作りたかった

こんにちは。まつもとかづまさと申します
僕はこの記事を書いている現在は障害者支援施設で支援員として働いています。

今回は3 step wallet という知的障がいの方でも「暗号通貨決済をできるようにする」という目的で作成したアプリの話です

3 step walletはこちら

今日の記事の流れ

スクリーンショット 2018-09-30 12.30.48.png

では本編へ

PWAとVue.jsでNEMウォレットアプリを作ろう!TypeScript導入 〜 TypeScriptで書いてみる

まず注意して欲しいのがライブラリのインストール先です。
実際に僕はこの時はターミナルを使っていたので少し違います。

スクリーンショット 2018-09-30 12.34.02.png
この
cd 3-step-wallet
がとても重要になりました。
前回の記事で書いたことなのですがライブラリがファイルにインストールされていない状態になっていたので、
npm run dev
ではうまくできていたのがGitHub Pagesで公開してもうまく反映されないという現象が起きていました。

ではなぜこういうことになるのかというと、僕は今現在
Visual Studio Codeを使っています。
そのVSCだとどういう現象が起きるのかというと。
スクリーンショット 2018-09-30 12.39.04.png
自動的にターミナルを開くと
cd 3-step-wallet
をしてくれます。なのであまり意識せずにライブラリをインストールすることができます。

vue-cli2とvue-cli3での違い

vue-cli2

このバージョンではTypescriptは自分で設定するという環境になっていました。
なのでこの記事でも細かな設定をTypescriptに合わせて変更していたと思います。

方法に関してはPWAと Vue.jsでNEMウォレットアプリを作ろう!ウォレット作成をしっかりと再現しましょう!!

vue-cli3

ではvue-cli3ではどのようにすればいいのかまずは記事通りに再現します。

GitHub pagesに公開する方法はこの記事でも紹介したように色々な変更点もあります。

まずはファイルを作成してからdevなのがserveに変わっているところ

こちらがvue-cli2のバージョンでの確認
npm run dev
でできます。
スクリーンショット 2018-09-30 13.01.52.png
VSCではこんな感じになるかと
スクリーンショット 2018-09-30 13.02.10.png

こちらがvue-cli3のバージョンでの確認
npm run serveで確認できます。
スクリーンショット 2018-09-30 13.10.21.png
VSCではこんな感じになります
スクリーンショット 2018-09-30 13.06.52.png

ServiceWorkerを確認

vue-cli2だと色々と変更をして行いました。詳しくは
PWAとVue.jsでNEMウォレットアプリを作ろう!環境構築 〜 PWAアプリの起動を見てください。
スクリーンショット 2018-09-30 13.25.18.png

vue-cli3では今のところ変更なしでいけるかと。
スクリーンショット 2018-09-30 13.32.41.png

*ここではiPhoneで試しているのですがどうもコンポーネントのHelloWorld.vueがうまく表示されません。アンドロイドでも試してもらえると助かります。リンク

vue-cli3で再現します

第1目標成果物
スクリーンショット 2018-09-30 15.43.38.png

srcというフォルダの中にcomponentというフォルダがあります
さらにその中にHelloWorld.vueというファイルがありますのでその中に以下のコードをコピペでも大丈夫ですので書きましょう。

src/component/HelloWorld.vue
<template>
  <div class="hello">
    <h1>{{ msg }}</h1>

    <h1>Hello Class</h1>
    <p>router-viewよりこんにちは</p>
    <h1>Hello Class</h1>
    <p>componentよりこんにちは</p>

  </div>
</template>

<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';

@Component
export default class HelloWorld extends Vue {
  @Prop() private msg!: string;
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped lang="scss">
h3 {
  margin: 40px 0 0;
}
ul {
  list-style-type: none;
  padding: 0;
}
li {
  display: inline-block;
  margin: 0 10px;
}
a {
  color: #42b983;
}
</style>

するとこんな感じになります
スクリーンショット 2018-09-30 15.54.59.png

まだタイトルみたいなところが変更できていませんね。次にタイトルをいじっていきます。

srcというフォルダの中にviewsというフォルダがあります。
その中のHome.vueというファイルをいじりましょう。

元々のテンプレートがこちら

src/view/Home.vue
<template>
  <div class="home">
    <img alt="Vue logo" src="../assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js + TypeScript App"/>
  </div>
</template>

<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';
import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src

@Component({
  components: {
    HelloWorld,
  },
})
export default class Home extends Vue {}
</script>

この上から4行目の

src/view/Home.vue

    <HelloWorld msg="Welcome to Your Vue.js + TypeScript App"/>

ここを

src/view/Home.vue

    <HelloWorld msg="Hello,Vue.js and TypeScript"/>

と書き換えましょう。
するとこんな感じになります。
スクリーンショット 2018-09-30 16.02.08.png

書き換えた状態

src/view/Home.vue
<template>
  <div class="home">
    <img alt="Vue logo" src="../assets/logo.png">
    <HelloWorld msg="Hello,Vue.js and TypeScript"/>
  </div>
</template>

<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';
import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src

@Component({
  components: {
    HelloWorld,
  },
})
export default class Home extends Vue {}
</script>

これでとりあえず
PWAとVue.jsでNEMウォレットアプリを作ろう!TypeScript導入 〜 TypeScriptで書いてみるこの記事は再現できたかと思います。

*いまだにPWAの設定が機能していないです。特にコンポーネントの部分だけうまく表示されていないです。
App.vueの部分は表示されていてちょっと詰まってます。この部分も改善したらまた報告します。

コピペでも得られる満足感

正直最初の頃は基本的にコピペをしていました。でもやっぱり、なんか作って見た!!という達成感を得るには十分だったと思います。今ではやりたいこともあるので僕なりの努力の仕方で真剣にスキルを磨いている状態ですが、最初の入り口のコピペでの達成感がなければ、おそらくまた心が折れていたと思います。

おしまい

2
0
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
2
0