首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从AngularJS视图调用控制器函数

从AngularJS视图调用控制器函数
EN

Stack Overflow用户
提问于 2014-11-15 21:54:03
回答 2查看 157关注 0票数 1

我的BlogController中有一个函数,它可以改变div的高度。

代码语言:javascript
复制
$scope.setTopBackgroundHeight = function (screenProportion, targetDiv) {
  globalService.setTopBackgroundHeight(screenProportion, targetDiv);
};

我在几个页面上使用这个控制器,但只想在一个页面上调用这个函数。因此,我提出了我的看法如下。

代码语言:javascript
复制
<div id="primary" 
     class="content-area blog-page" 
     ng-controller="blogCtrl">
     {{$scope.setTopBackgroundHeight("half", ".background-container");}}
</div>

现在,这是可行的。但是,从视图中的大括号中调用函数可以做风格方面的工作吗?我试过用角度的方式做这种事情的例子,但什么也看不见。应该在某项指令中吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-15 22:52:29

是的,所有DOM操作都应该在指令中完成。因此,在这种情况下,最好将一个指令附加到称为服务方法的div中。

HTML:

代码语言:javascript
复制
<div id="primary" 
     class="content-area blog-page" 
     ng-controller="blogCtrl"
     setBGHeight>
</div>

联署材料:

代码语言:javascript
复制
app.directive('setBGHeight', function(globalService) {
  return {
    link: function() {
      globalService.setTopBackgroundHeight("half", ".background-container");
    }
  }
));
票数 1
EN

Stack Overflow用户

发布于 2014-11-15 23:00:25

这就是指令的作用。确保在它们前面加上" ng -click“,就像用”ng-click“那样,但不要使用ng。

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

https://stackoverflow.com/questions/26951152

复制
相关文章

相似问题

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