首先,我想说我对Angularjs相当新,但我正在学习它的基础知识。
我的角度应用的目标是在AngularJS UI-Router中有2页。我很好地完成了应用程序的那部分,文档也很好。我现在的目标是将主页中的数据/选择/属性传递给关于页面。因此,如果我要在主页上有一个选择按钮列表,它将在about页面上显示/隐藏另一个列表。因此,主页上的选择将在主页上被记住。
我已经阅读了有关它的工厂,服务和rootScope的文档,我仍然感到困惑。什么以及如何将选择布尔值传递给工厂,然后将该值/数据注入“关于”页面然后隐藏/显示项目?
我已经在主页上设置了一些东西,但是在输入框方面(这是一个很好的第一步,但不是我正在寻找的)在关于页面上显示数据。在当前的浏览器会话中记住数据。
如何将ng-toggle,ng-click或任何变量控制器范围数据插入工厂?如何将该布尔值注入“关于页面”。
以下是我目前的Plunker解决方案:demo
我的plunker app角度代码
var routerApp = angular.module('routerApp', ['ui.router']);
routerApp.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/home');
$stateProvider
// HOME STATES AND NESTED VIEWS ========================================
.state('home', {
url: '/home',
templateUrl: 'partial-home.html'
})
// ABOUT PAGE AND MULTIPLE NAMED VIEWS =================================
.state('about', {
url: '/about',
templateUrl: 'partial-about.html'
});
});
routerApp.factory('MyService', function(){
return {
data: {
}
// Other methods or objects can go here?
};
});
routerApp.controller('FirstCtrl', function($scope, MyService){
$scope.data = MyService.data;
});
routerApp.controller('SecondCtrl', function($scope, MyService){
$scope.data = MyService.data;
});

<!DOCTYPE html>
<html ng-app="routerApp">
<head>
<!-- CSS (load bootstrap) -->
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
<style>
.navbar { border-radius:0; }
</style>
<!-- JS (load angular, ui-router, and our custom js file) -->
<script src="https://code.angularjs.org/1.4.8/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.8/angular-ui-router.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/X.Y.Z/angular-sanitize.js"></script>
<script src="app.js"></script>
</head>
<!-- apply our angular app to our site -->
<body>
<!-- NAVIGATION -->
<nav class="navbar navbar-inverse" role="navigation">
<div class="navbar-header">
<a class="navbar-brand" ui-sref="#">AngularUI Router</a>
</div>
<ul class="nav navbar-nav">
<li><a ui-sref="home">Home</a></li>
<li><a ui-sref="about">About</a></li>
</ul>
</nav>
<!-- MAIN CONTENT -->
<!-- THIS IS WHERE WE WILL INJECT OUR CONTENT ============================== -->
<div class="container">
<div ui-view></div>
</div>
</body>
</html>
&#13;
答案 0 :(得分:0)