簡體   English   中英

如何僅在需要時才將控制器加載到離子中?

[英]How to load controllers in ionic only when they are needed?

我在www/js/controllers中有一個controllers文件夾,其中存放了我的應用程序所需的所有控制器。 但是,當我啟動該應用程序時,所有控制器都將立即加載。 現在,我如何才能僅加載正在使用其視圖的那些控制器,並保持其他控制器的安全。

要動態加載控制器,您需要使用RequireJS。

http://requirejs.org/

  1. 使用https://oclazyload.readme.io/docs/with-your-router

或者,嘗試以下操作:

如果您使用的是ngRoute:

   $routeProvider
        .when('/url',
            {
                templateUrl: '/views/abc.html',
                resolve: resolveController('/controllers/abc.js')
            });

使用UI-Router:

.state('abc',{
            url : '/abc',
            templateUrl : 'views/abc.html',
            resolve: resolveController('/controllers/abc.js')
        })

我不知道你到底想問什么。

請參閱,JavaScript在執行應用程序時加載所有文件(甚至不會花費很多時間)。 請注意,僅文件加載(分配內存)不會執行即時運行功能以外的功能。 例如(Angularjs,Jquery,Underscore-僅首次加載文件,但使用時函數會執行)。

Angularjs是JS框架嗎? 就像上面一樣,在這里我們告訴我們按照視圖在路由或ng-controler指令中執行控制器,請注意文件僅在之前加載。 在單個視圖中,我們可以根據需要執行許多控制器(ng-controller)。

基於IIFE創建控制器和服務。 很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM