スリ飯屋MaLankaのフリーエンジニアな日々

このブログでは、フリーランス6期目となる自身の実体験から、フリーランスエンジニアになるためのノウハウ、ブログや沖縄移住、スリランカの最新情報について発信します。

【Vue.js】methodsやcomputedを共通化(mixin)する

※提携先の広告(リンク、バナー等)を含む場合があります

【Vue.js】methodsやcomputedを共通化(mixin)する


こんにちは、現役沖縄フリーランスエンジニアのmah(MaLanka)です。


このブログでは、

僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、

ノウハウなどを書いていきます。


今回は、


  • 【Vue.js】methodsやcomputedを共通化(mixin)する


について書いていきます。




【Vue.js】methodsやcomputedを共通化(mixin)する





手順


1、共通化したいmethodsやcomputed等を記述したファイルを作成する。


例として utils.js を作成します。


パスは javascript/packs/mixins/utils.js とします。


以下は、moment.jsで日時をparseする関数です。


# utils.js
import moment from 'moment'

export default {
  methods: {
    startParse: function(start) {
      return moment(start).format('YYYY-MM-DD')
    },
    endParse: function(end) {
      return moment(end).format('YYYY-MM-DD')
    }
  }
}


2、1のmethodsを使用するコンポーネントに以下を記述します。


# some_component.vue

export default {
  import utilsMixin from '../utils.jsへのパス'
  mixins: [utilsMixin] // 上記mixinを使用する宣言
}


こうすると、

2のコンポーネント内で、

1のutils.jsで定義したmethodsを使用できます。


# some_component.vue

<td>{{ startParse(task.start) }}</td>
<td>{{ endParse(task.end) }}</td>




以上です。




Vue.jsや流行りのTypeScriptを学びたい人へ


Vue.jsTypeScriptReact.jsを学習するなら、Udemyの下記のコースがおすすめ★

(自分も全て受講しました)


  • Vue.js

Vue.js + Firebaseで作るシングルページアプリケーション


  • TypeScriipt

ハンズオンで学ぶ TypeScript - JavaScript エンジニアのための TypeScript徹底入門


  • React.js

フロントエンドエンジニアのための React ・ Redux アプリケーション開発入門