Berkongsi binari nw.js dengan aplikasi dalam subfolder: Panduan untuk pengedaran yang cekap
P粉465287592
P粉465287592 2024-01-17 08:58:39
0
1
509

Jadi saya mempunyai masalah berikut: Projek saya (yang ini) bergantung pada dua aplikasi nw.js berbeza yang digabungkan menggunakan web2exe. Satu adalah untuk persediaan dan satu lagi kurang GUI dan harus dijalankan di latar belakang semasa permulaan. Aplikasi kedua juga bergantung pada nw untuk melaksanakan operasi seperti menunjukkan ikon dulang dan menyembunyikan tetingkap yang sebaliknya memerlukan skrip khusus platform (seperti fail kelompok atau skrip shell). Penyelesaian ini berfungsi dengan baik, tetapi saya tidak boleh memampatkan boleh laku kerana sistem perlu mengakses beberapa fail biasa dalam pepohon. Walaupun boleh, fail terbesar ialah fail dll dan setempat. Menggabungkan dua aplikasi web yang berasingan dan tidak dimampatkan dengan modul nod tambahan akan menghasilkan saiz fail sekitar 800mb, yang sama sekali tidak realistik untuk apa yang saya ingin capai dengan aplikasi saya.

Saya sedang mempertimbangkan untuk menggunakan rangka kerja lain seperti Neutralinojs, tetapi ini bermakna perlu menulis semula kod dan kehilangan beberapa fungsi khusus baharu dalam proses itu. Saya lebih berminat untuk berkongsi fail baharu antara dua aplikasi saya. Yang kedua terdapat dalam subfolder yang pertama. Kebanyakan fail nw (kecuali boleh laku sendiri) adalah sama dengan fail dalam direktori root nw. Khususnya, berkongsi folder nw.dll dan locales di antara mereka telah mengurangkan saiz sebanyak kira-kira 200mb.

Saya telah mencari cara untuk melakukan ini tetapi setakat ini saya tidak menemui sebarang kaedah yang baik. Mungkin ada penyelesaian di sini yang saya hilang. Penyelesaian lain yang saya boleh bayangkan ialah menggunakan beberapa subset yang lebih kecil atau melaksanakan semula nw menggunakan paparan web asli. Mungkin ada yang serupa di luar sana, tetapi saya belum menemuinya lagi.

P粉465287592
P粉465287592

membalas semua(1)
P粉163951336

Penyelesaian paling mudah adalah dengan menggabungkannya ke dalam satu aplikasi.

  1. Tukar package.json 中的 FelizJueves 的 main kepada fail JS dan bukannya fail HTML.
  2. Jadikan skrip JS sebagai proses latar belakang anda. Jangan buka tetingkap, lakukan apa sahaja yang anda sedang lakukan di FelizCheck.
  3. Dalam skrip JS ini, dengarkan acara open: https://nwjs.readthedocs.io/en/latest/References/App/#event-openargs
  4. Dalam open 事件处理程序中,使用 nw.Window.open() pengendali acara, gunakan nw.Window.open() untuk memaparkan tetingkap (FelizJueves.html). Acara ini dicetuskan apabila seseorang cuba memulakan aplikasi yang sudah berjalan. Jadi pelancaran pertama hanya memulakan penyemak latar belakang. Tetingkap UI akan muncul pada kali kedua anda memulakannya.
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan