Angularjs 如何绕过ng重复?
对于我的HTML结构,我想在我的Angularjs 如何绕过ng重复?,angularjs,angular-ui-router,Angularjs,Angular Ui Router,对于我的HTML结构,我想在我的ng repeat调用之外加载一个模板,但仍然使用来自movie in movieGroup调用的数据 此模板为movieGroup变量中的每个电影创建一个movie\u容器div元素。在movie\u容器div中,我有一个a元素,它调用状态路由.test .container-wrapper{"ng-repeat" => "movieGroup in movieGroups"} .movie_container{"ng-repeat" => "m
ng repeat
调用之外加载一个模板,但仍然使用来自movie in movieGroup
调用的数据
此模板为movieGroup变量中的每个电影创建一个movie\u容器
div元素。在movie\u容器
div中,我有一个a
元素,它调用状态路由.test
.container-wrapper{"ng-repeat" => "movieGroup in movieGroups"}
.movie_container{"ng-repeat" => "movie in movieGroup | orderBy:'release_date'"}
.movie-info
%a{:href => "#", "ui-sref" => ".test({value: '{{ movie.movie_id }}' })"} More info
.big-box{"ui-view" => "test"}
这是.test
状态
.state('home.test',{
params: {
value: null
},
url: '',
views: {
"test":{
templateUrl: '../assets/angular-app/templates/_movie-info.html',
controller: function($scope, $stateParams, $state) {
$scope.movie = $stateParams.value
// $scope.value = $stateParams.value;
console.log (movie_id)
}
}
}
})
如您所见,它将名为\u movie-info.html
的模板从第一个模板插入到测试
视图中
\u movie-info.html
模板如下所示
.container-info{"ng-style" => "{'background-image':'url(https://image.tmdb.org/t/p/w1280{{movie.backdrop}})'}"}
%ul.trailers
%li{"ng-repeat" => "trailer in filteredTrailers = (trailers | filter: { movie_id: movie.movie_id})"}
%a{"ui-sref" => ".container-big-trailer({value: '{{ trailer.link }}' })"} Load trailer
.container-trailers
%div{"ui-view" => "youtube_trailer"}
但是现在我不能使用{{movie.background}
或(预告片|过滤器:{movie\u id:movie.movie\u id})
因此,我希望有一种方法可以将我需要的数据传递到我的第二个模板
movie info.html
尝试传递movie对象而不是movie\u id
".test({value: '{{ movie}}' })"}
您应该能够在第二个模板中使用$scope.movie.movie\u id。另一种方法是使用
$scope.$parent.movie
谢谢您的输入,我想我已经完成了一点。我已将我的ui sref
更改为传递对象{{movie}
并在控制器主页中进行测试。测试我已创建了一个作用域$scope.movie=$stateParams.value
,用于插入a
单击中的数据。我还console.log($scope.movie)
after,它确实是我想要的电影对象和数据。我现在的问题是我无法在模板中获取信息。如果我执行电影标题:{{$scope.movie.title}
或电影标题:{{{movie.title}}
则不会渲染{}
。那么,我如何在状态控制器中使用我在$scope.movie
中创建的数据呢?你能为此创建一个plunkr吗?通过一个不同的问题,我得到了答案。但是谢谢你的帮助,让我有了正确的思维。澄清一下,值
只是一个参数名。它可以是任何东西。我认为这是一个固定的参数。当我想传递2个值(甚至在不同的状态下)时,导致了一些问题。