在Angularjs中加载页面时如何执行函数

时间:2020-03-11 11:23:57

标签: javascript angularjs

最好的问候,我遇到一个组件问题,该组件分为app.component及其各自的.html,加载页面,加载该组件中的模式时需要执行一个函数,我尝试使用$ (document) .ready (),但没有成功,我认为这是我拨打电话的方式的问题,我不太清楚它的工作方式,

<div class="row">
  <div class="col-md-12" style="text-align:center;">
   <a class="boton grande intermedio"  ng-touchstart="$ctrl.listConve()">Validar</a>
  </div>
</div>

但是我需要在此选择中加载它:

<div class="row">
  <div class="form-group" style="text-align:center;">
   <select class="form-control" id="convenio" name="selectConvenio"
           placeholder="Convenio" >
    <option selected>Elegir Convenio...</option>
    <option ng-repeat="option in $ctr.dataList">{{$option.nombreConvenio}}</option>
   </select>
  </div>
</div>

意向书格式:

<script>
 $(document).ready(
   function(){
     alert('funciona');
     $ctrl.listConve()
   })
</script>

但是它也不起作用。

1 个答案:

答案 0 :(得分:0)

使用控制器中的$onInit生命周期挂钩:

app.controller("ctrl", function() {
    this.listConve = function() {
        //...
    };

    this.$onInit = function() {
        this.listConve();
    };
})

从文档中:

生命周期挂钩

指令控制器可以提供AngularJS在指令生命周期中的某些时刻调用的方法:

  • $onInit()-在构造完元素上的所有控制器并初始化其绑定之后(并且在此元素上的指令的链接前和链接后),在每个控制器上调用。这是放置控制器初始化代码的好地方。

有关更多信息,请参见