2016-06-15 12 views
0

で新しいコントローラを作成します。 a 引数 'ChildController'は関数のエラーではありません。私は通常のng-viewでこのような新しいコントローラを呼び出すことはサポートされていませんが、ui-routerの答えは見つかりませんでした。いったんビューが提供されるとそこにあるデータだけを表示するテンプレートが必要な場合は、テンプレートを行う適切な方法は何でしょうか?UI-ルータ、私は次のような状態に行きますことを考えると見る

+0

私はあなたのChildControllerでシンプルな何かを開始します:PHPのスクリプトを削除し、ちょうど入れはconsole.log( 'コントローラアクティブ'); また、app.controllerの "app"はどこに定義されていますか?これも問題になるかもしれません。 – TSmith

+0

@TSmithそのPHPコンテンツのChildControllerをパージした後も、私はまだ同じエラーが発生します。また、appはページの前半で定義されています。 –

答えて

0

私は望むようにビュー内からコントローラを生成できませんでしたので、代わりに状態で生成されたコントローラを使用してビューにphp変数を添付してから、そのような:

状態定義:

$stateProvider.state('applicant', { 
     url: "/admin/applicants/:name", 
     templateProvider: function($http, $stateParams) { 
     return $http({ 
     method: 'GET', 
     url: 'http://example.com/applicant', 
     params: { 
      request: $stateParams.name, 
     } 
     }).then(function successCallback(html) { 
     return html.data; 
     }); 
    }, 
     controller: 'SendToCtrl' 
    }); 

ビュー:

<?php 
$applicant = str_replace('"', "'", $applicant); 
?> 
<div class="row"> 
<div id="fetchMe" class="col-md-12"> 
</div> 
</div> 
<script> 
applicant = <?php echo $applicant ?>; 
$('#fetchMe').data('key',applicant); 
</script> 

SendToCtrl:

app.controller('SendToCtrl', ["$scope", "$stateParams", "$state", function($scope, $stateParams, $state) { 

    console.log($stateParams); 
    $scope.applicant = $("#fetchMe").data('key'); 
    console.log($scope.applicant); 
}]); 

:)

関連する問題