AngularJS - 导入控制器

时间:2015-06-07 15:41:09

标签: javascript angularjs

我的网页中有不同的控制器,每个控制器都在不同的.php文档中。每个.php文档代表网页的不同部分。 (它与spotify相似)。

player.php:(用户可以使用音频播放器播放音乐)

<html ng-app="decibels-interactive" lang="en">
<body ng-controller="InteractiveController as interactCtrl">

panel_admin.php:(用户可以修改其数据和网页的部分数据)

<html lang="en" ng-app="decibels-admin">
<body ng-controller="AdminController as AdminCtrl" ng-init="AdminCtrl.sessionCtrl()">

player.php和panel_admin.php各自的 player.js和panel_admin.js ,其.controllers正常运行。

player.js:

var decibelsInteractive = angular.module("decibels-interactive", []);
decibelsInteractive.controller('InteractiveController', function ($scope, $log) {

panel_admin.js:

var adminControl = angular.module("decibels-admin", []);
adminControl.controller("AdminController", function($scope){

现在,我在menu.php中有菜单栏,我在 player.php 文档中使用,导入时使用:

//player.php

<html ng-app="decibels-interactive" lang="en">
<body ng-controller="InteractiveController as interactCtrl">

<?php include('includes/menu.php'); ?>
//here some html code
</body>
</html>

menu.php:(菜单是一个菜单栏,用户有一些选项,还有用户名和退出选项)

<div class="navbar-fixed"  ng-controller="InteractiveController as menu2">
  //some html code
</div>

menu.js:

app.controller('menu2', function($scope) {
$scope.content = '';

});

我遇到的问题是,如您所见,我在 player.php 中导入文档 menu.php 。 我还想在 panel_admin.php 中导入 menu.php ,并且能够使用我在 menu.js 中使用的一些方法,所以我在 menu.php (ng-controller =“”)中的代码不正确(或者我认为是这样)。 - 因为当我在panel_admin.php中使用它时,它将与ng-controller名称冲突。

有人告诉我,我应该使用服务,或者我应该在单独的模块中定义菜单,并将其用作我想要的依赖项。

我是angularJS的新手所以现在我有点失落了。我一直在搜索有关服务和依赖关系的信息,但没有成功。

我希望能够解决这个问题并继续编程!

谢谢!

0 个答案:

没有答案