Skip to content
Kei Funagayama edited this page Feb 5, 2014 · 2 revisions

Summary

beez には、beez.Error, beez.onError のエラー機能があります。

beez.Error

beez 内部のエラーは通常 beez.Error でthrow されます。

beez.ErrorError を継承しているので通常のエラーと同様に扱うことができます。

beez.Errorextend することで、カスタマイズされた Error を作成することも可能です。


// example: custom error.

var CustomError = beez.Error.extend(
    'Custom',
    {
        getMessage: function () {
            return this.message;
        }
    }
);
var custom = new CustomError('Custom Error !!!');
console.log(custom.message);
console.log(custom.stack);
console.log(custom.getMessage());

beez.onError

beez.onError(function, function, function) を使用すると、beezを使ったプロジェクト内で起こったエラーをハンドリングすることが出来ます。

window.onerror (First argument)

ブラウザにある window.onerror に設定される関数

window.onerror はブラウザ別に動作が異なる可能性があります。

beez.Bucks.onError (Second argument)

bucks.js#onerror に設定される関数

beez.Bucks を使ったプログラムすべての例外をキャッチする事ができます。

require.onError (third argument)

require.js#errors に設定される関数


// example
beez.onError(
    // window.onerror
    function windowOnError(message, url, line) {
        /** ... **/
    },
    // beez.Bucks.onError
    function bucksOnError(error) {
        /** ... **/
    },
    // require.Onerror
    function requireOnError(error) {
        /** ... **/
    }
);

Bucks DEBUG

Bucks 自体にもデバッグエラーが存在します。

require.beez.js.hbs などの、初期ロード部分で下記のフラグを入れるとデバッグエラーが表示されます。

require.beez.js.hbs

beez.Bucks.DEBUG = true;

beez.config.global with Bucks.DEBUG

設定ファイル 内の beez.config.global で DEBUG フラグを管理すると便利です。

[env]/[key].json

// ...
"config": {
    "beez.core": {
        // ...
        "defines": {
            "globals": {
                "DEBUG": true
            }
        }
       // ...
    }
    // ...
}

require.beez.js.hbs

beez.Bucks.DEBUG = !!beez.globals.DEBUG;

Clone this wiki locally