2017-09-26 4 views
0

J'ai une application Web que mon client veut envelopper dans une application Electron. J'ai créé avec succès un qui charge mon site Web correctement. Cependant, la police par défaut est changée en Times New Roman plutôt qu'en Helvetica Neue dans Chrome (spécifié dans mon boostrap-customized.css).Electron remplace ma police

J'ai parcouru la documentation d'Electron et trouvé l'objet webPreferences qui contient l'objet defaultFontFamily qui contient une chaîne pour standard, serif, sansSerif, monospace, cursive et fantasy. Mon problème est de trouver un exemple de comment spécifier la valeur que je veux là-bas dans le cadre du constructeur de BrowserWindow(). Je l'ai essayé les deux

webPreferences.defaultFontFamily.standard: 'Helvetica' 

et

webPreferences:defaultFontFamily:standard: 'Helvetica' 

à la fois me donner "SyntaxError: jeton inattendu" sur la première période ou le second côlon.

Je suis sûr que c'est une simple chose Javascript que je ne connais pas, ou du moins je l'espère.

Répondre

4

En effet, le problème est une simple chose JavaScript. Utilisez = pour définir la valeur de la propriété au lieu d'un :

Exemple:

var obj = { 
 
    prop1: null, 
 
    prop2: { 
 
    prop: 'Hi' 
 
    } 
 
}; 
 

 
//this works to set the values 
 
obj.prop1 = 'dog'; 
 
obj.prop2.prop = 'cat'; 
 

 
//this doesnt work - uncomment the lines below will cause the same error you're getting 
 
//obj.prop1: 'dog'; 
 
//obj.prop2.prop: 'cat'; 
 

 
console.log(obj);

+1

Le vrai coupable se ici avéré être que l'objet WebPreferences n'a pas été déjà défini comme je pensais qu'il était . Ce que j'ai fini par faire était plus proche de la façon dont vous avez défini l'obj en premier lieu, en spécifiant simplement toutes les valeurs là-bas. Puis en passant cet objet au constructeur BrowserWindow(). – cneff