0
コントローラから呼び出せるファクトリを作成しようとしています。 しかし、それもできません。angularjsを持つtypecriptファクトリ
マイpatientview.html:
<pThis is the patientsearch view.</p
<button type="button" class="btn btn-large btn-block btn-default" ng-click="click()">button</button>
マイpatientviewController:
module tsRisApp {
export interface IPatientregistrationScope extends ng.IScope {
click:any;
data: any[];
}
export class PatientviewCtrl {
constructor (private $scope: IPatientregistrationScope) {
$scope.click = function(){
let data = patientFactory().SearchPatients("Doe");
}
}
}
}
angular.module('tsRisApp')
.controller('PatientViewCtrl', tsRisApp.PatientViewCtrl);
そして、これが私のpatientFactoryです:
'use strict';
module tsRisApp {
export function patientFactory() {
return new Patientfactory();
}
export class Patientfactory {
static $inject = ['$http', '$location'];
http: ng.IHttpService;
location: ng.ILocationService;
constructor() {
}
SearchPatients(searchString:string) {
let request = new Request();
request.Compression = "no"
request.ServiceType = "SearchPatients"
request.SessionId = "SessionLessRequest"
request.Parameters = searchString;
let jsonRequest = JSON.stringify(request);
this.http.post("http://" +this.location +"request.php/", jsonRequest).then(function (response) {
return response.data;
})
}
}
}
私は次のエラーを取得するボタンをクリックすると:
angular.js:13920 TypeError:未定義の 'post'プロパティを読み取ることができません
何が欠けていますか?あなたの助けのための おかげで、私はあなたのコンストラクタを信じる