2017-11-03 7 views
0

私のアプリで$ state.go()を使用していますが、単純な関数では動作しません。 $ state.go()でエラーが表示されたり、正しい状態が示されたりしていません。

$ stateChangeStart、$ stateChangeError、$ viewContentLoading & $ stateChangeSuccessでテストしました。それはすべての正しい段階に到達します:しかし、$ stateChangeStart、$ viewContentLoading、そして$ stateChangeSuccessはそれぞれ適切な内容でページをロードしません。

私はもともとui-srefで試してみましたが動作しませんでしたので、$ state.go()で試してみましたが、今は動作していません。本当に混乱しています。このコードと、$ state.go()が動作する他の場所との違いはわかりません。状態の

$scope.showThingDetails = function() { 
$state.go('thingDetails');} 

コード:

HTMLリンク:

<li ng-repeat="thing in things" class="item" ng-click="showThingDetails()"> 

コードコントローラで

.state('thingDetails', { 
url: '/thingDetails', 
views: { 
    'menuContent': { 
    templateUrl: 'templates/thingDetails.html', 
    controller: 'thingDetails' 
    } 
} 
}) 

thingDetails.html

<ion-view view-title="Thing Details"> 
    <ion-content> 
    <h1>{{title}}</h1> 
    </ion-content> 
</ion-view> 

thingDetails.js

angular.module('controllers') 
    .controller('thingDetails', function($scope, $stateParams) { 
    $scope.title = "thing"; 
}); 

答えて

0

私はちょうど私自身の問題への答えを見つけました。私は、アプリケーション内の別の場所から状態をコピーして、ビューオブジェクト内のtemplateUrlとcontrollerを定義して、それを再生させていました。私はtemplateUrlとコントローラをviewオブジェクトから取り出し、それが機能しました。状態の

コードは以下のようになりましたし、作品:

.state('sweepstakeDetails', { 
    url: '/sweepstakeDetails', 
    templateUrl: 'templates/sweepstakeDetails.html', 
    controller: 'sweepstakeDetails' 
}) 

誰もが、私はそれを感謝したい理由として、より詳細な回答を追加することができます。

0

ビューをロードする必要がある 'menuContent'というui-viewがありますか?

あなたがmenuContentビュー

.state('thingDetails', { 
    url: '/thingDetails', 
    templateUrl: 'templates/thingDetails.html', 
    controller: 'thingDetails' 
}) 
せずにこの状態を使用しようとする可能性がありそうで

関連する問題