Javascript 如何";“返回两次”;(两处房产)来自AngularJS工厂?

Javascript 如何";“返回两次”;(两处房产)来自AngularJS工厂?,javascript,angularjs,Javascript,Angularjs,这里有一个非常基本的问题,但如何从angularJS工厂返回多个属性?我意识到在我的代码中,只有第一个返回将运行,只有消息将被传递到其他作用域。这有什么办法 app.js practice.factory('Data', function(){ return {message: "I'm data from a service"}; return {number: "twenty"}; }); practice.controller('FactoryOneController'

这里有一个非常基本的问题,但如何从angularJS工厂返回多个属性?我意识到在我的代码中,只有第一个返回将运行,只有消息将被传递到其他作用域。这有什么办法

app.js

practice.factory('Data', function(){
    return {message: "I'm data from a service"};
    return {number: "twenty"};
});

practice.controller('FactoryOneController',['$scope','Data', function($scope, Data){
        $scope.data = Data;
}]);

    practice.controller('FactorySecondController',['$scope','Data', function($scope, Data){
        $scope.data = Data;
}]);

<div ng-controller="FactoryOneController">
        <input ng-model="data.message">
        {{data.message}}
        <input ng-model="data.number">
        {{data.number}}
</div>

<div ng-controller="FactoryOneController">
        <input ng-model="data.message">
        {{data.message}}
        <input ng-model="data.number">
        {{data.number}}
</div>
practice.factory('Data',function()){
返回{message:“我是来自服务的数据”};
返回{编号:“二十”};
});
practice.controller('FactoryOneController',['$scope','Data',函数($scope,Data){
$scope.data=数据;
}]);
practice.controller('FactorySecondController',['$scope','Data',函数($scope,Data){
$scope.data=数据;
}]);
{{data.message}
{{data.number}
{{data.message}
{{data.number}

html

组合这些内容并返回一个包含多个键的对象

因此,与其这样做,不如:

practice.factory('Data', function(){
    return {message: "I'm data from a service"};
    return {number: "twenty"};
});
…这样做:

practice.factory('Data', function(){
    return {message: "I'm data from a service", number: "twenty"};
});
然后,稍后在控制器中,您可以执行以下操作:

$scope.data = Data;

doSomething($scope.data.message);
doSomething($scope.data.number);

我猜是相当基本的……)只需
返回{消息:“我是来自服务的数据”,编号:“二十”}只能返回一个值。因此,在单个返回的object-value中添加更多属性。应该注意的是,这是一个通用的JavaScript函数概念,并不特定于Angular.js