2017-03-18 11 views
-1

ウェブアプリケーションにangular modal serviceを設定しようとしていますが、自分のボタンをクリックしても表示されません。私は間違って何をしていますか?それはね角モーダルサービスが表示されない

ビルダービュー

<div ng-controller="BuilderController as vm"> 
    <button type="button" class="btn btn-success" ng-click="vm.showExportModal()">Export</button> 
</div> 

ビルダーコントローラ

angular.module('myWebApp') 
    .controller('BuilderController', function ($scope, BuilderService) {  
    var vm = this; 

    vm.showExportModal = function() { 
     BuilderService.showExportModal(); 
    }; 
    }); 

ビルダーサービス

angular.module('myWebApp') 
    .service('BuilderService', function (ModalService) { 

    var builderService = { 
     showExportModal: showExportModal 
    }; 
    return builderService; 

    function showExportModal() { 
     ModalService.showModal({ 
     template: "<div>Fry lives in {{futurama.city}}</div>", 
     controller: function() { 
      this.city = "New New York"; 
     }, 
     controllerAs : "futurama" 
     }) 
    }; 

    }); 
+0

アプリへの依存関係としてサービスを追加したことがありますか? 'angularModule(' myWebApp '、[' angularModalService ']);' – cnorthfield

+0

Modalサービスとは何ですか?何か間違いはありますか?質問には十分な詳細が含まれていません。 [MCVE](http://stackoverflow.com/help/mcve)を提供してください。プラークやフィドル。 – estus

答えて

1

このスニペットでうまく動作するようにするには、アプリに依存するものとして注入したことを確認することをお勧めします。

指示に指定したテンプレートの代わりにモーダルを表示するには、正しいモーダルテンプレートが必要です。

angular.module('myWebApp', ['angularModalService']); 
 

 
angular.module('myWebApp') 
 
    .controller('BuilderController', function($scope, BuilderService) { 
 
    var vm = this; 
 

 
    vm.showExportModal = function() { 
 
     BuilderService.showExportModal(); 
 
    }; 
 
    }); 
 

 
angular.module('myWebApp') 
 
    .service('BuilderService', function(ModalService) { 
 

 
    var builderService = { 
 
     showExportModal: showExportModal 
 
    }; 
 
    return builderService; 
 

 
    function showExportModal() { 
 
     ModalService.showModal({ 
 
     template: "<div>Fry lives in {{futurama.city}}</div>", 
 
     controller: function() { 
 
      this.city = "New New York"; 
 
     }, 
 
     controllerAs: "futurama" 
 
     }) 
 
    }; 
 

 
    });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<script src="http://dwmkerr.github.io/angular-modal-service/angular- 
 
modal-service.js"></script> 
 

 
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" rel="stylesheet"> 
 

 
<div ng-app="myWebApp"> 
 
    <div ng-controller="BuilderController as vm"> 
 
    <button type="button" class="btn btn-success" ng-click="vm.showExportModal()">Export</button> 
 
    </div> 
 
</div>

+0

@cnotherfield私はこれをすべて行いました( 'app.js'ファイルの依存関係として追加しましたが、ボタンをクリックしても何も表示されないようです – methuselah

関連する問題