2017-10-23 7 views
0

電子メインプロセスでjQueryを使用する方法は?電子メインプロセスのjQuery

私が見つけたすべての例は、レンダリングプロセスのためです。

例メインプロセスで使用されるutilを作成し、getを使用してapiからデータをフェッチします。

$.getを使用すると、get is not a functionというエラーが表示されます。

ありがとうございました。

答えて

1

jQueryはブラウザ用のJSライブラリです(DOMの操作など)。メインプロセスはNodeJSで実行されているため、メインプロセスでは使用しないでください。

アプリケーションの詳細を知らなくてもソリューションを提案することは難しいです。メインプロセスでAJAXリクエストのデータが必要な場合は、NodeJS httpsパッケージを使用できます。 Twilio blogから例:

const https = require('https'); 

https.get('https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY', (resp) => { 
    let data = ''; 

    // A chunk of data has been recieved. 
    resp.on('data', (chunk) => { 
    data += chunk; 
    }); 

    // The whole response has been received. Print out the result. 
    resp.on('end',() => { 
    console.log(JSON.parse(data).explanation); 
    }); 

}).on("error", (err) => { 
    console.log("Error: " + err.message); 
}); 

編集: ハンス・コッホは述べた@として、それの一つが主な目的なので、あなたはおそらくどちらかのレンダラープロセスでのjQueryを使用しないでくださいは、DOM操作のためのAPIを正規化することです、 AJAXなど、ElectronではChromiumだけをサポートする必要があります。 AJAXリクエストをしたい場合は、のように、XMLHttpRequestまたはそれをラップするnpmパッケージを使用できます。

+0

レンダリングプロセスでさえ、jQueryは間違った承認を受けています。正規化されたDOM操作はありません。単一のターゲットブラウザ(クロム)があれば正規化する必要はありません –

+0

ありがとう、私は[request](https ://www.npmjs.com/package/request)。 – zer09

+0

@ HansKoch私はそれを得ていませんでした。 「ターゲットブラウザが1つだけの場合、正規化する必要はありません」とはどういう意味ですか?私は[要求](https://www.npmjs.com/package/request)を使用してデータを取得し、jqueryを使用してページの一部を更新するつもりですか?または他の方法がありますか?ありがとう。 – zer09

関連する問題