Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularjs将渲染值以html格式保存在变量中_Html_Angularjs_Spring Mvc - Fatal编程技术网

angularjs将渲染值以html格式保存在变量中

angularjs将渲染值以html格式保存在变量中,html,angularjs,spring-mvc,Html,Angularjs,Spring Mvc,我希望有人能帮我解决这个问题,这可能是一个奇怪的问题,因为我在网上没有找到答案 我调用数据库并检索项目列表(json)。 然后在angularjs中,我通过提取相关的数据片段(姓名、年龄等)来呈现这个列表,并将其作为行列表正确地显示在表中 然后,我有一个编辑按钮,它会将我带到另一个页面,在那里我想放置一个下拉列表。 我想知道的是,是否可以将我先前在上一页中创建的呈现列表添加到该下拉列表中。 是否可以将先前呈现的列表保存在变量中,然后在下拉列表中使用该变量 谢谢我认为,您可以将列表存储在控制器中,

我希望有人能帮我解决这个问题,这可能是一个奇怪的问题,因为我在网上没有找到答案

我调用数据库并检索项目列表(json)。 然后在angularjs中,我通过提取相关的数据片段(姓名、年龄等)来呈现这个列表,并将其作为行列表正确地显示在表中

然后,我有一个编辑按钮,它会将我带到另一个页面,在那里我想放置一个下拉列表。 我想知道的是,是否可以将我先前在上一页中创建的呈现列表添加到该下拉列表中。 是否可以将先前呈现的列表保存在变量中,然后在下拉列表中使用该变量


谢谢

我认为,您可以将列表存储在控制器中,并使此数据可用于此下拉列表。

与其尝试查询列表,不如将列表添加到模板中,从模板中获取列表并在其他地方呈现,我建议查询列表,将列表保存到服务中,然后,当您想再次使用该列表时,请从服务获取它。比如:

服务: 控制器:
听起来你想做的是重用数据(用来填充下拉列表的数据),这可以通过几种不同的方式实现。真正的全局数据可以保存在$rootScope上,但您可能希望实现一个服务来处理您的数据,并将该服务注入控制器。我认为,对于我的问题,rootScope或服务基本上无法使用,让我们假设我在第一个视图中有一个人员列表,我使用ng repeat和其他功能来很好地显示每个人的年龄、姓名、姓氏和地址,不显示职业。在第二个视图中,我不想再次呈现人员列表,我希望能够在第一个页面中使用呈现的列表,并在第二个页面的下拉列表中使用它。在我使用ng repeat并呈现每个人的代码中,是否可以在其中初始化一个列表变量并以呈现它的方式保存每个人?为什么要这样做?如果我理解正确,您希望将第一个视图中呈现的HTML注入第二个视图。有什么好处?为什么不允许Angular再次呈现列表?另一方面,如果嵌套视图是您真正希望的结构,那么考虑支持它们的角度UI路由器。
var services = angular.module('services');

services.factory('getListService',['$http',function($http){
    var getListOfStuff = function(){
        //call to database
        return //your json
    };

    var extractNameAgeEtc = function(){
        var myListOfStuff = //get list of stuff from $http or database
        var myListOfNameAgeEtc = //make a list of tuples or {name,age,etc} objects
        return myListOfNameAgeEtc;
    };

    return {
        extractNameAgeEtc : extractNameAgeEtc
    };
}]);
angular.module('controllers',['services']);

var controllersModule = angular.module('controllers');

controllersModule.controller('tableRenderController',['getListService','$scope',function(getListService,$scope){
    //use this with your table rendering template, probably with ng-repeat
    $scope.MyTableValue = getListService.extractNameAgeEtc();
}]);

controllersModule.controller('dropdownRenderController',['getListService','$scope',function(getListService,$scope){
    //use this with your dropdown rendering template, probably with ng-repeat
    $scope.MyDropDownValue = getListService.extractNameAgeEtc();
}]);