我尝试使用依赖注入工厂来模块化另一个,但它不工作。我使用离子框架和角度。
angular.module('starter.services1', []).factory('Test 1', function($http) {
return {
show_text: function() {
console.log(test1)
}
}
});
angular.module('starter.services2', ['starter.services1']).factory('Test2', function($http, Test1) {
return {
Test1.show_text();
}
});
错误:无法读取未定义
的属性'show_text'
答案 0 :(得分:3)
你的工厂是Test 1
,在定义工厂时最好没有空间的名字,所以把它改成没有空格的东西,
angular.module('starter.services1', []).factory('factorySample1', function($http) {
return {
show_text: function() {
console.log(test1)
}
}
});
angular.module('starter.services2', ['starter.services1']).factory('Test2', function($http, factorySample1) {
return {
factorySample1.show_text();
}
});
答案 1 :(得分:0)
您的代码有两个问题,一个是拼写错误和console.log(test1)
。但是由于initShow function
angular.module('starter.services1', []).factory('Test1', function($http) {
return {
show_text: function() {
console.log('test1')
}
}
});
angular.module('starter.services2', ['starter.services1']).factory('Test2', function($http, Test1) {
return {
initShow: function() {
Test1.show_text();
}
}
});

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