首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angularjs -如何在一个控制器中使用模块

Angularjs -如何在一个控制器中使用模块
EN

Stack Overflow用户
提问于 2013-11-16 17:49:58
回答 3查看 930关注 0票数 0

我正在学习Angularjs,我有两个模板页面-一个login.html页面和一个index.html页面。

我正在使用这个指令- https://github.com/pablojim/highcharts-ng在我的index.html页面上创建一个图表。

我遇到的问题是,我不想在我的login.html页面中包括login.html,因为它不是在那个页面上使用的,但是在下面的代码中,如果没有包含这个脚本,我就会得到一个错误。

我怎样才能将'highcharts-ng移动到仅仅一个控制器中,而不是进入我的整个应用程序?

app.js

代码语言:javascript
复制
var myezteam = angular.module('myezteam', ['highcharts-ng']); //<-- Don't want highcharts-ng here

dashboard.js

代码语言:javascript
复制
myezteam.controller('DashboardController', ['$scope', '$http', 'myezteamBase', function($scope, $http, myezteamBase) {
...

我试过了,但是它给了我一个错误:Uncaught SyntaxError: Unexpected token -

代码语言:javascript
复制
myezteam.controller('DashboardController', ['$scope', '$http', 'myezteamBase', 'highcharts-ng', function($scope, $http, myezteamBase, highcharts-ng) {
    ...
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-17 20:07:13

最简单的方法是在每个页面上使用不同的模块声明,并根据需要使用不同的依赖项。

票数 1
EN

Stack Overflow用户

发布于 2013-11-16 18:18:10

请记住,您需要改变“加载”的思维方式,因为角对于SPA (单页应用程序)来说,您通常一次加载所有应用程序--无论是登录视图还是任何其他视图--这都无关紧要。

我将建议您检查这种结构https://github.com/angular-app/angular-app,其中他们有不同的“模块”与他们自己的依赖关系的不同部分的应用程序,无论如何,整个应用程序是一次加载。

如果您希望有一个尚未加载所有应用程序的登录页面,也许您可以将该页面作为普通的html/jquery并在登录后重定向到redirect。

票数 0
EN

Stack Overflow用户

发布于 2013-11-16 20:44:18

尝试这种方法来解决Uncaught SyntaxError

代码语言:javascript
复制
myezteam.controller('DashboardController',
    ['$scope', '$http', 'myezteamBase', 'highcharts-ng',
        function($scope, $http, myezteamBase, highcharts)

在用数组方法定义依赖项时,可以更改函数中的参数名称。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20021718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档