JavaScript フレームワーク fairy support js
その他

moduleやコンポーネント、テンプレート、msg.jsonを取得するときに、キャッシュ対策としてクエリパラメーターを付加できます
fairysupport.min.jsを読み込んでいるscriptタグにdata-version属性を付けてください。data-version="1"の場合?1が付加されます

<script id="fs-js" src="http://localhost:8000/js/fairysupport.min.js" data-page-root="http://localhost:8000/page" data-version="1"></script>

このフレームワークは最初にmoduleを読み込みます。その際エラーになった場合の関数を定義できます
function fairysupportInitFail(retryCount, error){}を定義してください
fairysupportInitFailがtrueを返すと、もう一度module、msg.jsonを読み込みに行きます
fairysupportInitFailの第一引数は再読み込みを行った回数です

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>
sample
</title>
<script>
function fairysupportInitFail(retryCount, error){
    console.error(error);
    if (retryCount >= 3) {
        return false;
    } else {
        return true;
    }
}
</script>
<script id="fs-js" src="http://localhost:8000/js/fairysupport.min.js" data-page-root="http://localhost:8000/page"></script>
</head>
<body>
    <div data-obj="obj"></div>
    <div><button data-name="sample">sample</button></div>
</body>
</html>

別ファイルになっているテンプレートを読み込み失敗時のリトライも定義できます
function fairysupportTemplateFail(retryCount, error){}を定義してください
fairysupportTemplateFailがtrueを返すと、もう一度テンプレートを読み込みに行きます
fairysupportTemplateFailの第一引数は再読み込みを行った回数です

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>
sample
</title>
<script>
function fairysupportTemplateFail(retryCount, error){
    console.error(error);
    if (retryCount >= 3) {
        return false;
    } else {
        return true;
    }
}
</script>
<script id="fs-js" src="http://localhost:8000/js/fairysupport.min.js" data-page-root="http://localhost:8000/page"></script>
</head>
<body>
    <div data-obj="obj"></div>
    <div><button data-name="sample">sample</button></div>
</body>
</html>

コンポーネントを読み込み失敗時のリトライも定義できます
function fairysupportComponentFail(retryCount, error){}を定義してください
fairysupportComponentFailがtrueを返すと、もう一度コンポーネントを読み込みに行きます
fairysupportComponentFailの第一引数は再読み込みを行った回数です

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>
sample
</title>
<script>
function fairysupportComponentFail(retryCount, error){
    console.error(error);
    if (retryCount >= 3) {
        return false;
    } else {
        return true;
    }
}
</script>
<script id="fs-js" src="http://localhost:8000/js/fairysupport.min.js" data-page-root="http://localhost:8000/page"></script>
</head>
<body>
    <div data-obj="obj"></div>
    <div><button data-name="sample">sample</button></div>
</body>
</html>

次ページ対象ブラウザ

目次