我有一个 Angular Js - Typescript 项目。我正在尝试使用Angular-Foundation开发模态,但它不起作用。
这是我的代码:
HTML
<div>
<script type="text/ng-template" id="myModalContent.html">
<h3>I'm a modal!</h3>
<ul>
<li ng-repeat="item in vm.items">
<a ng-click="selected.item = item">{{ vm.item }}</a>
</li>
</ul>
<p>Selected: <b>{{ selected.item }}</b></p>
<button class="button secondary" ng-click="reposition()">Reset top position</button>
<a class="close-reveal-modal" ng-click="vm.cancelModal()">× </a>
</script>
<button class="button" ng-click="vm.openModal()">Open me!</button>
<div ng-show="selected">Selection from a modal: {{ selected }} </div>
</div>
控制器
public items: any[];
constructor(private $modal: any){
this.items = ["item1", "item2", "item3"];
}
public openModal() {
let modalInstance = this.$modal.open({
templateUrl: "myModalContent.html",
controller: "MissionsCtrl",
resolve: {
items: function () {
return this.items;
}
}
});
modalInstance.result.then(function (selectedItem) {
this.selected = selectedItem;
}, function () {
console.log("Modal dismissed at:" + new Date());
});
}
信息:我在 app.ts 中包含模块“mm.foundation”,并且在 index.html 中正确引用了 JS 文件(mm-foundation.min.js 和 mm-foundation-tpls.min.js)。
最终,有人知道如何在不使用 angular-foundation 的情况下使用 AngularJS 和 Typescript 实现模式?
我不知道问题出在哪里。
提前致谢!
编辑:
我添加我的 app.ts 文件:
(function(){
"use strict";
angular.module("MyApp", [
"ngSanitize",
"pascalprecht.translate",
"color.picker",
"ui.router",
"mm.foundation",
"app.core",
]);
})();
阅读Angular Docs我相信问题出在我的控制器上,但我仍然不知道如何解决它。