Reputation: 23
I am facing some issues in injecting values to bootstrap modal. In the modal controller value of key variable is coming as undefined.
Code to open Modal
var key = 100;
var opts = {
backdrop: true,
backdropClick: false,
dialogFade: false,
keyboard: true,
controller: 'modalController',
controllerAs: 'vm',
templateUrl: "/app/features/modal/modal.html",
resolve: {
key: () => key
}
};
var modalInstance = this.$modal.open(opts);
Modal controller
module Workspace.Controllers {
"use strict";
export interface IModalController {
ok: () => void;
cancel: () => void;
}
export class ModalController implements IModalController {
static $inject = ['$modalInstance', 'key'];
constructor(private $modalInstance: any, private key: any) {
}
public ok = () => {
this.$modalInstance.close();
};
public cancel = () => {
this.$modalInstance.dismiss('cancel');
};
}
}
app.ts
workspaceApp.workspaceModule.controller('modalController', ['$modalInstance', ($modalInstance: any, key: any) => new Controllers.ModalController($modalInstance, key)]);
Upvotes: 0
Views: 255
Reputation: 276085
['$modalInstance', ($modalInstance: any, key: any)
You are missing 'key'
so the argument will be undefined
.
Upvotes: 1