2017-11-01 11 views
0

私はAngularJSを初めて使っています。ページをリフレッシュする際のアドバイスを探しています。ヘッダーとフッターがある最初に読み込まれたページは正常に動作しますが、リフレッシュしたときにng-viewの間にロードされた他のページは、最初のページでスタイルやスクリプトのない部分ページのみが読み込まれたヘッダーとフッターなしで表示されます。ここでanglejs with codeigniterリフレッシュページ

はapp.jsファイルは通常、ダッシュボードをロードしているように見えます

var myApp = angular.module('app', [ 
'ngRoute', 
'oc.lazyLoad' 
]); 
myApp.config(function($routerProvider, $locationProvider){ 
$routerProvider 
.when('/', { 
    templateUrl: 'Dashboard',// cotroller php file name 
    controller: 'DashboardCtrl', 
    resolve: { 
     loadAsset: ['$ocLazyLoad', function($ocLazyLoad) { 
      return $ocLazyLoad.load(['assets/js/controllers/DashboardCtrl.js']) 
     }] 
    } 
}) 
.when('/Groupcontroller', { 
    templateUrl: 'Groupcontroller', // cotroller php file name 
    controller: 'GroupCtrl', 
    resolve: { 
     loadAsset: ['$ocLazyLoad', function($ocLazyLoad) { 
      return $ocLazyLoad.load(['assets/js/controllers/GroupCtrl.js']) 
     }] 
    } 
}) 
locationProvider.html5Mode(true); 
}]); 

class Groupcontroller extends CI_Controller { 
public function index(){ 
    $this->load->view('patial/groups'); 
}} 

答えて

0

よう

class Dashboard extends CI_Controller { 
public function index(){ 
    $this->load->view("home"); 
} 
} 

Groupcontroller PHPファイルのコントローラーのようなダッシュボード・コントローラですグループコントローラは部分テンプレートをロードしています。通常、それらは完全なhtmlを含まない。

CIのテンプレートに完全なhtmlを入れるには、フッタには$this->load->view('header');と同じものを使用する必要があります。

+0

'

'の間に部分ページしか読み込まれないので、 'home'ページでヘッダーとフッターをロードしてから、部分ページだけをロードします。 – nashwa

+0

ああ、あなたは何かが間違っていると思いますngRouterまたはcodeigniterの場合、ページは現在バックエンドから来ていますが、すべてのリクエストは、angleがそれらを処理するインデックスに移動する必要があります。 –