2016-02-07 43 views
1

你好社区我与角开工的项目服务,但我卡住下列要求:变量捕获一个按钮,并将其传递到角

我想捕捉的值是一个按钮里面,该值来自控制器,并单击该值传递给一个服务,这个服务应该去到另一个控制器:

HTML

<div ng-app="myApp"> 

    <div ng-controller="capturaCtrl"> 
    <!--capturar valor en 'algunaVariable' con ng-click o ng-model se me ocurre para pasarla al service captura --> 
    CODIGO A CAPTURAR: <button>{{capturame}}</button> 
    </div> 

    <br> 

    <div ng-controller="recibeCtrl"> 
    CODIGO CAPTURADO: 
    {{codigo}} 
    </div> 

JS

var app = angular.module('myApp',[]); 

    app.factory('captura', function(){ 
    var codigo = algunaVariable; // <== variable que reciba del controllar capturaCtrl 
    return{ 
     getCodes: function(){ 
     return codigo; 
     } 
    } 
    }); 

    app.controller('capturaCtrl', ['$scope', 'captura', function($scope, captura){ 
    $scope.capturame = '1111'; 

    }]); 


    app.controller('recibeCtrl', ['$scope', 'captura', function($scope, captura){ 
    $scope.codigo = captura.getCodes(); 

    }]); 

在这里,我给你我的代码工作:https://jsfiddle.net/alx_lopz/wgfh3dLa/5/

+0

使用AngularJS服务在控制器之间共享数据[AngularJS服务](https://docs.angularjs.org/guide/services)。我举了一个适合你的例子:[例子](http://codepen.io/grimaldello/pen/gPBJVO?editors=1011) – ronIDX

回答

0

添加setter函数给工厂。

app.factory('captura', function(){ 
    var codigo = "initial value"; // <== variable que reciba del controllar capturaCtrl 
    return{ 
     getCodes: function(){ 
     return codigo; 
     }, 
     setCodes: function(value) { 
     codigo = value; 
     return value; 
     } 
    } 
    }); 

添加ng-click到您的按钮

CODIGO A CAPTURAR: <button ng-click="setCodigo(capturame)"> 
         {{capturame}} 
        </button> 

转换检索到的功能

CODIGO CAPTURADO: {{ codigo() }} 

把功能上范围

app.controller('capturaCtrl', ['$scope', 'captura', function($scope, captura){ 
    $scope.capturame = '1111'; 
    $scope.setCodigo = captura.setCodes; 

    }]); 

    app.controller('recibeCtrl', ['$scope', 'captura', function($scope, captura){ 
    $scope.codigo = captura.getCodes; 

    }]); 

DEMO on JSFiddle

+0

谢谢你的好评! – alexlopezgt

相关问题