私はwindow.innerWidth
とwindow.innerHeight
をブラウザに使用しています。これらの値をキャッシュして、アクセスするたびに再描画しないようにします。私は、同梱のためbrowserify使用していますので、私はこのモジュールを書いた:ブラウザのCommonjsモジュールがローカル変数を更新していません
var w = window.innerWidth;
var h = window.innerHeight;
var timeout = false; // holder for timeout id
var delay = 250; // delay after event is "complete" to run callback
// window.resize callback function
function setDimensions() {
w = window.innerWidth;
h = window.innerHeight;
}
// window.resize event listener
window.addEventListener('resize', function() {
clearTimeout(timeout);
timeout = setTimeout(setDimensions, delay);
});
module.exports = { w, h }
しかし、ビューポートのサイズが変更されたときの寸法が更新されていないインポートするとき。これをどうすれば解決できますか?
私は、ローカルの 'w'と' h'を更新して、私のメインエントリーポイントでeventListenerを初期化することができるセッターをエクスポートすることを考えています。あるいはこれを解決するより良い方法がありますか? – vsjn3290ckjnaoij2jikndckjb