Skip to main content

v4からv5への移行手順

ここでは、お使いのKifu for JS v3あるいはv4を、最新版であるv5に移行する手順を説明します。

  • legacy版: Kifu for JS v4以前の、Kifu for Java/Flashとの互換性を保ったUXを持つKifu for JSのこと
  • 最新版: Kifu for JS v5で導入された、スマホに最適化されたUXを持つKifu for JSのこと

A) <script>タグでKifu for JSを読み込んでいる標準的な場合

次のような<script>タグを記述することでKifu for JSを読み込んでいる場合、二通りのオプションがあります。

<script src="https://cdn.jsdelivr.net/npm/kifu-for-js@4/bundle/kifu-for-js.min.js" charset="utf-8"></script>

オプション1: legacy版の使用をやめ、すべて最新版に移行する

既存ページでlegacy版で表示されている将棋再生盤を最新版に移行し、以後全て最新版を使用する場合は、読み込みスクリプトのバージョンを5に上げるだけで、最新版に移行できます。

<script src="https://cdn.jsdelivr.net/npm/kifu-for-js@5/bundle/kifu-for-js.min.js" charset="utf-8"></script>

次のようなコードは、最新版として動作します。

<script>KifuForJS.load("../json-kifu-format/jt201409130101.kif");</script>
<script>KifuForJS.load("../json-kifu-format/jt201409130101.kif", "board");</script>

<div id="board"></div>

オプション2: すでにある盤はそのままに、最新版を混在させる

既存ページのレイアウトの関係などから、すでにある盤でlegacy版を使い続け、新たに設置する盤面については最新版を使いたいといった場合は、v5のlegacy版を含んだスクリプトkifu-for-js-legacy.min.jsを読み込むようにします。

<script src="https://cdn.jsdelivr.net/npm/kifu-for-js@5/bundle/kifu-for-js-legacy.min.js" charset="utf-8"></script>

すると、既存の記述はそのままKifu for JS legacy版として動きます。

<script>KifuForJS.load("../json-kifu-format/jt201409130101.kif");</script>

新しい方式で記述された盤面については最新版として動きます。

<script type="kifu" data-src="../json-kifu-format/jt201409130101.kif"></script>

load()関数を用いる場合は、mode: "latest"オプションを渡すことで最新版を使うことができます。

<script>KifuForJS.load("../json-kifu-format/jt201409130101.kif", {mode: "latest"});</script>

B) npmモジュールとして利用している場合

v5は新旧両方のKifu for JSを提供しています。次のようにバージョンを上げ、

npm install kifu-for-js@^5

このような既存のコードは最新版を使うようになります。

import {load} from "kifu-for-js";

load("foobar.kif", "container-id")

legacy版を使いたい場合は、import先を変更します。

import {load} from "kifu-for-js/legacy";

load("foobar.kif", "container-id")

付録: ライブラリのバージョンとlegacy版、最新版の対応表

ライブラリのバージョンlegacy版最新版
3.x.x, 4.x.x-
5.x.x (kifu-for-js.min.js)-
5.x.x (kifu-for-js-legacy.min.js)
5.x.x (npmモジュール)