GVKun编程网logo

js调用angular事件(angularjs调用接口)

21

最近很多小伙伴都在问js调用angular事件和angularjs调用接口这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展angularjs–Angularbootstraptyp

最近很多小伙伴都在问js调用angular事件angularjs调用接口这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展angularjs – Angular bootstrap typeahead不能使用Angular 1.3.0、angularjs – Angular JS:使用Angular有哪些问题/陷阱?、angularjs – AngularUI日历事件源,在每个视图开关上调用一个函数、angularjs – 使用Angular js处理Select2事件等相关知识,下面开始了哦!

本文目录一览:

js调用angular事件(angularjs调用接口)

js调用angular事件(angularjs调用接口)

<div id="clickId" ng-app="myApp" ng-controller="firstCtrl">
    <a ng-if="show" onclick="hideHtml()">click</a>
</div>
<script src="http://cdn.bootcss.com/angular.js/1.5.6/angular.min.js"></script>
<script>
    angular.module(''myApp'', []).controller(''firstCtrl'', function ($scope, $timeout) {

        $timeout(function () {
            $scope.show = true
        })

        $scope.hideHtml = function () {
            alert(arguments[0])
        }
    })

    function hideHtml() {
        angular.element(document.getElementById(''clickId'')).scope().hideHtml(''123'')
    }
</script>

angularjs – Angular bootstrap typeahead不能使用Angular 1.3.0

angularjs – Angular bootstrap typeahead不能使用Angular 1.3.0

我创建了一个小的plunker来表明这不起作用.谁能帮助我如何使用1.3.0 angularJS /提供备用解决方案的typeahead.我们正在使用angular-bootstrap 0.11.0和最新版本的bootstrap.我们的代码严重依赖于1.3.0中引入的ng-messages

Here is the plunker link

你可以清楚地看到,点击事件,向上箭头和向下箭头不起作用.添加一些代码让SO开心.

总结

以上是小编为你收集整理的angularjs – Angular bootstrap typeahead不能使用Angular 1.3.0全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

angularjs – Angular JS:使用Angular有哪些问题/陷阱?

angularjs – Angular JS:使用Angular有哪些问题/陷阱?

当我开始使用Angular构建真实且更复杂的应用程序时,我可能会遇到哪些陷阱/问题/痛苦?
我正在开展一项新工作,并建议将Angular(和Bootstrap)作为构建我们所有网络应用程序的基础.在使用backbone.js将近1.5年之后,我知道我不想使用它…我们有一个Node MongoDB后端,并且在任何客户端堆栈中都没有真正的投资.一个独特之处在于我们有一些大数据 – 一个集合可以达到10个大小的演出,拥有数亿个记录……我已经阅读并使用Angular过去两周左右而且还没有真的发现任何不好的事情.

解决方法

真的没有陷阱:)

关于一个可能不那么狂热的解释:AngularJS(据我所知)比骨干更加自以为是 – 大多数流程都很容易执行(显示数据,处理交互)但是遵循更严格的模式这样做.据说它使得angularJS比骨干更难弯曲到你的特定标准,但我发现它并非如此.此外,该系统的一些缺点正在迅速消失,因为它正在快速发展.

以防万一:路由系统是angularJS的一个较小的方面,因为它通常不是很灵活(没有路由继承,没有状态机)…我开始使用变通方法制作应用程序,结果证明非常干净,然而,角度ui的人们提出了solid solution,类似的解决方案必然会出现在角度本身.

动画指令也是一个缺点(动画对象的外观和消失是棘手的,因为它们需要存在直到动画结束,并且必须进行管理)并且还有解决方法,但核心动画系统是在角度1.1.4,here于4月4日推出,所以你看,它正在迅速发展:)

关于学习曲线:它有一些,但没有任何有你经验的人无法在很短的时间内处理. This series of video tutorials是我所知道的最好的资源,作为理解大多数事情要点的简单方法(文档足够好并且变得更好,但在某些地方缺乏适用的例子,它会真正帮助 – 或者缺乏,它们可能会更好到现在为止 – “初学者教程”也是可怕的,我个人讨厌长时间运行,一步一步的教程)

希望能帮助到你!

angularjs – AngularUI日历事件源,在每个视图开关上调用一个函数

angularjs – AngularUI日历事件源,在每个视图开关上调用一个函数

为了证明这个问题,我将解释我想要实现的目标.我正在使用AngularUI日历创建一个预订系统,问题是当事件数量增加时(100个事件,日历将需要几分钟来绑定数据),日历的性能开始迅速下降.由于我每次用户更改视图(周,月,日,上一个,下一个等等)时都会通过发送 AJAX请求来尝试从后端获取数据,这是我开始时有问题.

正如在AngularUI Calendar网站上建议的那样,我可以使用这个函数:$scope.eventsF = function(start,end,timezone,callback){…}并将它添加到$scope.eventSources中,它将在每个上面调用查看开关.我将$scope.eventsF添加到我的$scope.eventSources,但它从未更新过.

这是示例(获取所有数据,并且它正在工作):

$scope.mainEvents = []; //To initiate the event source
Event.getEvents().then(function (events) { // Event is a factory
  if (events) { //Checking if I have events
    // If I try: $scope.mainEvents = events; the $scope.eventSources won't update
    angular.forEach(events,function(value) {
      this.push(value);
    },$scope.mainEvents);
  } else {
    // Tell the user no events to render...
  }
},function (error) {
  console.log(error);
});

$scope.eventSources = [$scope.mainEvents,$scope.draftEvents];

现在我更改了Event.getEvents()以获取两个参数作为视图的开始日期和结束日期,将它们发送到后端,并再次以json的形式检索数据(工作正常,我安慰了它).

这是代码(我尝试了两种方式):事件正在渲染,但$scope.eventSources并未在这两种方式中进行更新.

第一:

$scope.mainEvents = function (start,callback) {
  var s = start.format('YYYY-MM-DD'),e = end.format('YYYY-MM-DD');
  Event.getEvents(s,e).then(function (events) {
    $scope.mainEvents = []; //even tried $scope.eventSources.mainEvents
    if (events) {
      angular.forEach(events,function (value) {
        this.push(value);
      },$scope.mainEvents); //event tried $scope.eventSources.mainEvents
      callback($scope.mainEvents);
    }
  },function (error) {
    console.log(error);
  });
};

$scope.eventSources = [$scope.mainEvents,$scope.draftEvents];

第二:

$scope.eventsF = function (start,e).then(function (events) {
    $scope.mainEvents = [];
    if (events) {
      angular.forEach(events,$scope.mainEvents);
      callback($scope.mainEvents);
    }
  },$scope.draftEvents,$scope.eventsF];

我希望这很清楚.

我能想到的最简单的方法是在$scope.eventsF结尾处将事件源重新分配给$scope.eventSources.以下代码基于您的第二个选项.干杯.
$scope.mainEvents = [];
$scope.draftEvents = [];
$scope.eventsF = function (start,callback) {
    var s = start.format('YYYY-MM-DD'),e = end.format('YYYY-MM-DD');
    Event.getEvents(s,e).then(function (events) {
        $scope.mainEvents = [];
        if (events) {
            angular.forEach(events,function (value) {
                this.push(value);
            },$scope.mainEvents);
            // Re-assign event sources
            $scope.eventSources = [$scope.mainEvents,$scope.eventsF];
            // Assume that 'events' is an array with 5 elements.
            // console.log($scope.eventSources) will produce :
            // Array [ Array[5],Array[0],app</$scope.eventsF() ]

            callback($scope.mainEvents);
        }
    },function (error) {
        console.log(error);
    });
};
$scope.eventSources = [$scope.mainEvents,$scope.eventsF];
// console.log($scope.eventSources) will produce :
// Array [ Array[0],app</$scope.eventsF() ]

编辑

我已经更新了上面的代码,以显示我在哪个部分测试了$scope.eventSources.你能否请说明你希望$scope.eventSources更新的示例代码的哪一部分?

angularjs – 使用Angular js处理Select2事件

angularjs – 使用Angular js处理Select2事件

我在使用Angular js激活我的select2 on-change事件时遇到了问题.

这是我的HTML:

<select ui-select2="{allowClear:true}" data-placeholder="Select a Department" ng-change="DoSomething()"ng-model="l.DepartmentID">
    <option value=""></option>
    <option ng-repeat="d in l.LineLookups.Departments" value="{{d.DepartmentID}}">{{d.Type}}</option> </select>

当选择下拉列表更改时,更改事件不会触发.这是我的控制器中的事件处理程序:

$scope.DoSomething = function () {
        alert('here');
        ...
}

处理这个问题的最佳方法是什么?我被告知要对模型值进行监视.这会有用,还是有更好的方法?

另外通过观看ng-model:

在视图中:

<select ui-select2="{allowClear:true}" data-placeholder="Select a Department"ng-model="l.DepartmentID">
<option value=""></option>
<option ng-repeat="d in l.LineLookups.Departments" value="{{d.DepartmentID}}">{{d.Type}}</option>
</select>

在控制器中:

$scope.$watch('l.DepartmentID',function (newVal,oldVal) {
    if (oldVal == newVal) return;
    alert('here');
},true);

关于js调用angular事件angularjs调用接口的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于angularjs – Angular bootstrap typeahead不能使用Angular 1.3.0、angularjs – Angular JS:使用Angular有哪些问题/陷阱?、angularjs – AngularUI日历事件源,在每个视图开关上调用一个函数、angularjs – 使用Angular js处理Select2事件等相关知识的信息别忘了在本站进行查找喔。

本文标签: