Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.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中的两个部分文件之间传递$scope数据_Angularjs_Angularjs Directive_Angularjs Scope_Angularjs Routing_Angularjs Controller - Fatal编程技术网

如何在angularjs中的两个部分文件之间传递$scope数据

如何在angularjs中的两个部分文件之间传递$scope数据,angularjs,angularjs-directive,angularjs-scope,angularjs-routing,angularjs-controller,Angularjs,Angularjs Directive,Angularjs Scope,Angularjs Routing,Angularjs Controller,我如何使用angularJS在两个部分html文件中传递数据,完全奇怪,我无法通过它 <div class="blog-meta clearfix"> <p class="pull-left"> <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i clas

我如何使用angularJS在两个部分html文件中传递数据,完全奇怪,我无法通过它

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
我有一个索引文件[fine.],我登录并访问用DemoCtrl[fine]编写的view5[partials/blog.html],到目前为止一切正常。现在,当我点击blog.html中的链接时,它会转到下一页,但不会显示我在控制器中设置的任何$scope数据

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
部分文件的HTML代码: {{post.postText}

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
*app.js*

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
    app.controller('DemoCtrl', ['$scope', 'Post', 'ezfb', '$window', 'PFactory', 'PostFactory', '$location', '$timeout', function ($scope, Post, ezfb, $window, PFactory, PostFactory, $location, $timeout) {
        $scope.postDetails = function (post) {
                $scope.postdetail = {id: null};
                $scope.postdetail = post;
                $location.path('/view18');
            }
    }]);    
    $routeProvider.when('/view5', {templateUrl: 'nova/blog.html', controller: 'DemoCtrl'});
    $routeProvider.when('/view18', {templateUrl: 'nova/blog-item.html', controller: 'DemoCtrl18'}); 

中的postDetails(post)方法在DemoCtrl中使用post对象调用,并且该post对象已在$scope.postdetail变量中设置。postdetail方法和视图是不同的模板。我可以在控制台中的controller和postDetails方法中看到数据,但它不会显示在模板中。

您无法访问另一个控制器/模板中一个控制器范围内的数据集

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
使用服务并在服务中保留/设置数据,并在DemoCtrl18中使用该服务以获取在DemoCtrl中设置的数据

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>
或者使用angaular ui路由器获得更多功能,如父子状态和范围继承等

    <div class="blog-meta clearfix">
     <p class="pull-left">
         <i class="icon-user"></i> by <a href="#">{{ post.firstName }} {{ post.lastName }}</a> | <i class="icon-folder-close"></i> Category <a href="#">Food</a> | <i class="icon-calendar"></i> {{post.createdDate.millis | date:'MM/dd/yyyy @ h:mma'}}
     </p>
     <p class="pull-right"><i class="icon-comment pull"></i> <a href="#/view18#comments" data-ng-click="postDetails(post)">3 Comments</a></p>
     </div>