私はすべてのJS用のテストを作成しようとしており、テスト(私はJasmineを使用しています)はブラウザでローカルに実行されます。セキュリティ上の制約(?)のため、FirefoxではsessionStorageがローカルでは動作しません(ブラウザでfile:/// ...を表示)。FFでローカルにsessionStorageを処理する方法(テスト用)
クイック例:
window.sessionStorage.setItem('foo', 'bar');
これは ":操作がサポートされていないエラー" を与えます。
私は自分のモックメソッドでwindow.sessionStorageをオーバーライドしようとしましたが、運がありません。
唯一の解決策は、sessionStorageに関連するすべてをtry/catchブロック内に置くことです。
この問題を解決するにはどうすればよいですか?
それは完璧に、ありがとう! :) – phobia
値が存在しない場合、getItemはNULLを返す必要があります。だから、 'return items [key]? items [キー]:null' – user1338062