2016-09-20 12 views
0

AngularJsの新機能です。 私たちは不明なプロバイダエラーを取得している工場を注入中。 AngularJs 1.5.5AngerJsの工場で未知のインジェクターエラーをクリアする方法

私のコントローラと工場下:フォームへの投稿のために私はこのBen Nadal

バージョンを参照さ。誰でも私を救うことができますか?

//Factory 
 
angular.module('transformRequestService', []) 
 
.factory('transformRequestAsFormAsPost', 
 
function() { 
 
// I prepare the request data for the form post. 
 
function transformRequest(data, getHeaders) { 
 
var headers = getHeaders(); 
 
headers["Content-type"] = "application/x-www-form-urlencoded; charset=utf-8"; 
 
return (serializeData(data)); 
 
} 
 
// Return the factory value. 
 
return (transformRequest); 
 
// --- 
 

 
function serializeData(data) { 
 
// If this is not an object, defer to native stringification. 
 
if (!angular.isObject(data)) { 
 
return ((data == null) ? "" : data.toString()); 
 
} 
 
var buffer = []; 
 
// Serialize each key in the object. 
 
for (var name in data) { 
 
if (!data.hasOwnProperty(name)) { 
 
continue; 
 
} 
 
var value = data[name]; 
 
buffer.push(
 
encodeURIComponent(name) + 
 
"=" + 
 
encodeURIComponent((value == null) ? "" : value) 
 
); 
 
} 
 
// Serialize the buffer and clean it up for transportation. 
 
var source = buffer 
 
.join("&") 
 
.replace(/%20/g, "+") 
 
; 
 
return (source); 
 
} 
 
}); 
 

 

 
//App.js 
 
var routerApp = angular.module('myApp', ['ui.router' 
 
, 'vendorLoginModule' 
 
, 'ui.bootstrap' 
 
, 'createUser' 
 
, 'ui.grid' 
 
, 'ui.grid.selection' 
 
, 'ui.grid.exporter' 
 
, 'ngLoadingSpinner' 
 
, 'confirm' 
 
, 'transformRequestService' 
 
]); 
 

 

 
//injecting in controller 
 
angular.module('confirm', []) 
 

 
.controller('confirmController', ['$scope', '$http', '$timeout', '$uibModal', '$log', '$state', '$filter', '$crypthmac', '$rootScope', '$sce', 'transformRequestAsFormAsPost ', function ($scope, $http, $timeout, $uibModal, $log, $state, $filter, $crypthmac, $rootScope, $sce, transformRequestAsFormAsPost) { 
 
------ 
 

 
}

答えて

0

]

あなたはモジュールtransformRequestServiceに登録し、あなたのtransformRequestAsFormAsPost工場を持っていますが、あなたがのための依存関係としてそのモジュールを置かないでください、あなたのコントローラに

+0

申し訳ありません。 '['実際のコードからコピーしていないときには、このコントローラーでこのファクトリーを使用することはできません。 – Bala

0

が欠落していますファクトリを使用するモジュールで、そのサービスとファクトリを使用することはできません。

代わりにこれを行います。

// laying a dependency on 'transformRequestService' module 
// results in the ability to use its services and factories 
angular.module('confirm', ["transformRequestService"]); 
関連する問題