javascript - Mengapa pembolehubah global ditakrifkan dalam .run() app.js dalam Ionic, yang boleh diakses dalam pengawal halaman, tetapi tidak boleh diakses selepas dimuat semula?
怪我咯
怪我咯 2017-06-12 09:22:30
0
1
748

Gunakan $rootScope.obj1 = {} untuk mentakrifkan pembolehubah global dalam fungsi .run() app.js Apabila anda memulakan program buat kali pertama, anda boleh mengakses $rootScope.obj1 dalam fungsi .controller() bagi. halaman daripada. Walau bagaimanapun, selepas memuat semula halaman pada penyemak imbas, $rootScope.obj1 yang diakses dalam fungsi .controller() halaman menjadi tidak ditentukan.

Pada mulanya saya fikir fungsi .run() app.js tidak dilaksanakan semasa menyegarkan, tetapi selepas ujian, didapati ia telah dilaksanakan. Tetapi susunan pelaksanaan apabila menyegarkan nampaknya: mula-mula laksanakan fungsi .controller() halaman, kemudian laksanakan fungsi .config() dalam app.js, dan kemudian laksanakan fungsi .run() dalam app.js. Ia berbeza dari semasa anda mula-mula memulakan program. Disebabkan hubungan jujukan ini, selepas memuat semula halaman, pembolehubah global yang dipratentukan tidak boleh diakses dalam fungsi .controller() halaman.

Maaf, adakah ini berlaku? Jika ya, bagaimana untuk menyelesaikan masalah ini? Di manakah pembolehubah global yang telah ditetapkan harus diletakkan?

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(1)
左手右手慢动作

Jujukan pelaksanaan angular.js adalah lebih kurang seperti berikut:

  1. app.config()

  2. app.run()

  3. Arahan untuk menyusun

  4. app.controller()

  5. Pautan arahan

Sukar untuk menilai masalah anda, saya rasa ia mungkin disebabkan oleh susunan pemuatan .js anda.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan