Vue.jsでチェスゲームを閲覧するためのライブラリを実装する「vue-pgn」

vue-marquee-text-componentとは

vue-pgnは、チェスゲームを閲覧するためコンポーネントライブラリです。

chess.jsを内部で機能させています。
これによりチェスの移動の生成/検証、駒の配置/移動、およびチェック/チェックメイト/ステイルメイトの検出を行っています。

 

【動画サイズ:374KB】

 

環境

この記事は、以下の管理人の検証環境にて記事にしています。

vue.js 2.6.10
vue-pgn 0.4.0

ライブラリの取得

ライブラリを取得するには、npm, CDNのどれか一つを使用します。

npm

npm install --save vue-pgn

CDN

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue-pgn.browser.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue-pgn.css">

gitリポジトリは以下から取得できます。

 

導入手順

管理人が行った、動作確認サンプルを実装するために、以下の手順でソースコードを導入していきます。
このサンプルでは、チェスゲームの再現を実装します。

 

step
1
ライブラリの呼び出し

まずライブラリを呼び出す為に、以下の2通りのケースで呼び出します。

ES6等で実装する場合

import {vuepgn} from 'vue-pgn'
import 'vue-pgn/dist/vue-pgn.css'

UMDで実装する場合

const VuePgn = window['VuePgn'].vuepgn;

 

step
2
メソッドを設定


上記で取得したVuePgncomponentsに取り込みます。

dataとしてpgnを準備します。
これにチェスの結果を設定します。

チェスの結果の設定方法は以下を参考にしてください。
https://github.com/jhlywa/chess.js#ascii

new Vue({
  el: '#app',
  data:{
    pgn: '1. g4 e5 2. f4 Qh4',
    height: 300,
  },
  components: {
    vuepgn: VuePgn
  }
});

 

step
3
テンプレートを準備

<vuepgn>タグを配置します。
v-bindでチェスの結果や高さを設定します。

サンプルはケバブケースで記載しています。

<div id="app">
  <vuepgn v-bind="{pgn,height}"></vuepgn>
</div>

 

サンプル

今回のソースを実際に触って確認できるようにデモを用意しました。

See the Pen Vue.jsでチェスゲームを閲覧するためのライブラリを実装する「vue-pgn」 by カバの樹 (@kabanoki) on CodePen.dark

 

さいごに

チェスゲームを閲覧するためのコンポーネントライブラリでした。

今日はこの辺でー

 

  • この記事を書いた人

カバノキ

印刷会社のWEB部隊に所属してます。 WEB制作に携わってから、もう時期10年になります。 普段の業務では、PHPをメインにサーバーサイドの言語を扱っています。 最近のお気に入りはJavascriptです。 Vue.jsを狂喜乱舞しながら、社内に布教中です。

-Miscellaneous, UI Components, vue.js, ライブラリ
-, , , ,