2015-11-15 5 views

Antwort

6

Sie einen Scheck verwenden könnten, ob der Code auf dem Server oder auf der Client-Seite durch Überprüfen, ob Modul 'undefined' nicht ausgeführt wird:

Sie können
var isNode = typeof module !== 'undefined' 

dann fortfahren nur dann ausgeführt, diesen Code auf dem Client Seite:

if(!isnode){ 
    //use the local storage 
} 

Sie sollten jedoch schon immer überprüfen, ob Storage definiert, bevor Sie da nicht alle Browser es unterstützen:

if(typeof(Storage) !== "undefined"){ 
    //use the local storage 
} 
+1

Guter Punkt! Ich verwende 'browserStorage = (typeof localStorage === 'undefined')? null: localStorage; 'und dann in der Komponente check' browserStorage'. Ich frage mich, ob es eine bessere Problemumgehung gibt. – jvalen

0

Standard hat specific support für solche Probleme.

Sie müssen lediglich einen Kommentar hinzufügen, der den Standard darüber informiert, dass eine Variable vom globalen Gültigkeitsbereich bereitgestellt wird.

// MyStuff.js 
/* global localStorage */ 

// Use localStorage below with no linter errors 
Verwandte Themen