如何在angularjs上提供服务

How to put a services on angularjs?

本文关键字:服务 angularjs      更新时间:2023-09-26

我正试图在angular js上编写一个模块,用于放置我的服务(文件:utils/productos.js),然后将其作为我的模块ventas(ventas/ventas.js)的依赖项加载,但

我得到下一个错误:

Error: [$injector:nomod] Module 'utils.producto' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.3.10/$injector/nomod?p0=utils.producto angular.js:63:11
Error: [$injector:modulerr] Failed to instantiate module webui due to:
[$injector:modulerr] Failed to instantiate module utils.producto due to:
[$injector:nomod] Module 'utils.producto' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.3.10/$injector/nomod?p0=utils.producto
minErr/<@http://localhost/cat-dog/web/app/js/angular.js:63:12
module/<@http://localhost/cat-dog/web/app/js/angular.js:1764:1
ensure@http://localhost/cat-dog/web/app/js/angular.js:1688:38
module@http://localhost/cat-dog/web/app/js/angular.js:1762:1
loadModules/<@http://localhost/cat-dog/web/app/js/angular.js:4094:22
forEach@http://localhost/cat-dog/web/app/js/angular.js:323:11
loadModules@http://localhost/cat-dog/web/app/js/angular.js:4078:5
loadModules/<@http://localhost/cat-dog/web/app/js/angular.js:4095:40
forEach@http://localhost/cat-dog/web/app/js/angular.js:323:11
lo

app.js

var app = angular.module('webui', ['ngRoute', 'utils.producto', 'ventas']);

main.html

<script type="text/javascript" src="ventas/ventas.js"></script>
<script type="text/javascript" src="js/app.js"></script>
<script type="text/javascript" src="utils/productos.js"></script>

ventas/ventas.js

angular.module('ventas', ['ngRoute', 'utils.producto'])
        .config(['$routeProvider', function ($routeProvider) {
                $routeProvider.when('/ventas', {
                    templateUrl: 'ventas/ventas.html',
                    controller: 'VentasCtrl'
                });
            }])

utils/producto.js

    angular.module('utils.producto').factory("buscadorProductos", buscadorProductos).factory("autocompProductos", autocompProductos);
    function buscadorProductos($http) {
..

angular.module('utils.producto',[]) 一样,首先将服务定义为模块

代码

 angular.module('utils.producto',[]).factory("buscadorProductos", buscadorProductos).factory("autocompProductos", autocompProductos);
    function buscadorProductos($http) {