Javascript Ng单击被多次调用而未被激发

Javascript Ng单击被多次调用而未被激发,javascript,jquery,html,angularjs,ionic-framework,Javascript,Jquery,Html,Angularjs,Ionic Framework,标题可能有点混乱,但我会解释的 我有这个标题和动态内容,将显示在每一页。所以我为它创建了一个控制器: .controller("HeaderCtrl", function($log) { var HeaderCtrl = this; HeaderCtrl.HelpButtonVisible = "false"; HeaderCtrl.HideHelpButton = function() { HeaderCtrl.HelpButtonVisible

标题可能有点混乱,但我会解释的

我有这个标题和动态内容,将显示在每一页。所以我为它创建了一个控制器:

.controller("HeaderCtrl", function($log) {

    var HeaderCtrl = this;

    HeaderCtrl.HelpButtonVisible = "false";

    HeaderCtrl.HideHelpButton = function() {

        HeaderCtrl.HelpButtonVisible = "false";
        $log.log("HideHelpButton");
    }

    HeaderCtrl.ShowHelpButton = function() {

        HeaderCtrl.HelpButtonVisible = "true";
        $log.log("ShowHelpButton");
    }

    $log.log("HeaderCtrl Initialized");
})
我有index.html:

<ion-header-bar class="bar-positive has-tabs-top" align-title="center">
  <h3 class="title">{{}}</h3>
  <button id="help-button" class="button button-stable icon-left ion-information-circled" 
    ng-show="{{ HeaderCtrl.HeaderService.HelpButtonVisible }}" ui-sref="login">Help</button>
</ion-header-bar>   

<!-- Content will be rendered here -->
<ion-nav-view>
</ion-nav-view>
出于某种原因,我一加载页面,就会得到以下日志:

HeaderCtrl Initialized
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
(2) ionic.bundle.js:19387 ShowHelpButton

为什么要叫这么多次?我甚至没有单击按钮,我根本不明白为什么要调用它。

使用ngClick,您只需提供函数表达式,而不将它放在{{}中,因此:ng click=HeaderCtrl。ShowHelpButton@PatrickEvans哈哈,我是愚蠢的asf,非常感谢。请把它作为答案贴出来。
<button id="login-button" class="col button button-positive button-small" ng-click="{{HeaderCtrl.ShowHelpButton()}}" ui-sref="main">Login</button>
HeaderCtrl Initialized
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
ionic.bundle.js:19387 ShowHelpButton
(2) ionic.bundle.js:19387 ShowHelpButton