标签: angularjs

如何在AngularJS中使用按键事件?

我想在下面的文本框中捕获回车键按下事件.为了更清楚,我使用a ng-repeat来填充tbody.这是HTML:

<td><input type="number" id="closeqty{{$index}}" class="pagination-right closefield" 
    data-ng-model="closeqtymodel" data-ng-change="change($index)" required placeholder="{{item.closeMeasure}}" /></td>
Run Code Online (Sandbox Code Playgroud)

这是我的模块:

angular.module('components', ['ngResource']);
Run Code Online (Sandbox Code Playgroud)

我正在使用资源填充表,我的控制器代码是:

function Ajaxy($scope, $resource) {
//controller which has resource to populate the table 
}
Run Code Online (Sandbox Code Playgroud)

angularjs angular-ui angularjs-directive

404
推荐指数
7
解决办法
45万
查看次数

AngularJS:为什么ng-bind在角度上优于{{}}?

我在其中一个有角度的演示文稿中,提到的会议中的一个人ng-bind比{{}}绑定更好.

其中一个原因是,ng-bind将变量放在监视列表中,并且只有在模型更改时才{{}}会将数据推送到视图,另一方面,每次都会插入表达式(我猜这是角度循环)并推动值,即使值发生变化.

另外据说,如果您在屏幕上没有太多数据可以使用{{}},并且性能问题将不可见.有人可以为我解释这个问题吗?

javascript angularjs ng-bind

401
推荐指数
5
解决办法
18万
查看次数

ng-include的正确语法是什么?

我正在尝试在其中包含一个HTML代码段ng-repeat,但我无法让include工作.似乎当前的语法与ng-include以前的语法不同:我看到许多例子使用

<div ng-include src="path/file.html"></div>
Run Code Online (Sandbox Code Playgroud)

但在官方文档中,它表示要使用

<div ng-include="path/file.html"></div>
Run Code Online (Sandbox Code Playgroud)

但是然后在页面上显示为

<div ng-include src="path/file.html"></div>
Run Code Online (Sandbox Code Playgroud)

无论如何,我试过了

<div ng-include="views/sidepanel.html"></div>
Run Code Online (Sandbox Code Playgroud)
<div ng-include src="views/sidepanel.html"></div>
Run Code Online (Sandbox Code Playgroud)
<ng-include src="views/sidepanel.html"></ng-include>
Run Code Online (Sandbox Code Playgroud)
<ng-include="views/sidepanel.html"></ng-include>
Run Code Online (Sandbox Code Playgroud)
<ng:include src="views/sidepanel.html"></ng:include>
Run Code Online (Sandbox Code Playgroud)

我的代码片段不是很多代码,但是它有很多内容; 我在里面ng-repeat读动态加载模板可能会导致问题,所以我用sidepanel.html单词替换了内容foo,但仍然没有.

我也尝试直接在页面中声明模板,如下所示:

<script type="text/ng-template" id="tmpl">
    foo
</script>
Run Code Online (Sandbox Code Playgroud)

并贯穿ng-include引用脚本的所有变体,但id仍然没有.

我的页面中有更多内容,但现在我已将其删除到这个:

<!-- index.html -->
<html>
<head>
<!-- angular includes -->
</head>
<body ng-view="views/main.html"> <!-- view is actually set in the router -->
    <!-- views/main.html -->
    <header>
        <h2>Blah</h2>
    </header> …
Run Code Online (Sandbox Code Playgroud)

javascript html5 repeater include angularjs

397
推荐指数
6
解决办法
31万
查看次数

如何从控制台测试AngularJS服务?

我有这样的服务:

angular.module('app').factory('ExampleService', function(){
  this.f1 = function(world){
    return 'Hello '+world;
  }
  return this;
})
Run Code Online (Sandbox Code Playgroud)

我想从JavaScript控制台测试它并调用f1()服务的功能.

我怎样才能做到这一点?

angularjs angularjs-service

392
推荐指数
4
解决办法
11万
查看次数

定义指令时,'controller','link'和'compile'函数之间的区别

有些地方似乎使用控制器功能用于指令逻辑而其他地方使用链接.角度主页上的选项卡示例使用控制器作为一个,并链接另一个指令.两者有什么区别?

javascript web-applications javascript-framework angularjs

391
推荐指数
4
解决办法
11万
查看次数

AngularJS与jQuery有何不同?

我只知道一个js库,那就是jQuery.
但我的组中的其他编码器正在改变AngularJS作为新项目的默认库.

我什么都不知道.它与jQuery有什么不同?
我已经为jQuery中的类似任务完​​成了一组函数.我还可以使用AngularJS的jQuery东西吗?

javascript jquery angularjs

387
推荐指数
5
解决办法
21万
查看次数

将参数添加到ng-repeat内的ng-click功能似乎不起作用

我有一个ng-repeat像这样的简单循环:

<li ng-repeat='task in tasks'>
  <p> {{task.name}}
  <button ng-click="removeTask({{task.id}})">remove</button>
</li>
Run Code Online (Sandbox Code Playgroud)

控制器中有一个功能$scope.removeTask(taskID).

据我所知,Angular将首先渲染视图并用{{task.id}}数字替换插值,然后,在click事件中,将评估ng-click字符串.

在这种情况下ng-click,完全得到预期,即:ng-click="removeTask(5)".但是......它没有做任何事情.

当然,我可以编写一个代码来task.id从$tasks数组甚至DOM中获取,但这似乎不像Angular方式.

那么,如何ng-click在ng-repeat循环内向指令添加动态内容呢?

angularjs ng-repeat angularjs-ng-click

382
推荐指数
3
解决办法
43万
查看次数

AngularJS从子控制器访问父作用域

我已经设置了我的控制器 data-ng-controller="xyzController as vm"

我有一个父/子嵌套控制器的场景.通过使用$parent.vm.property我在嵌套的html中访问父属性没有问题,但我无法弄清楚如何从我的子控制器中访问父属性.

我试过注入$ scope然后使用$scope.$parent.vm.property,但这不起作用?

有人可以提供建议吗?

angularjs angularjs-scope

378
推荐指数
3
解决办法
48万
查看次数

AngularJS ng-repeat处理空列表案例

我认为这将是一个非常普遍的事情,但我找不到如何在AngularJS中处理它.假设我有一个事件列表并希望使用AngularJS输出它们,那么这很简单:

<ul>
    <li ng-repeat="event in events">{{event.title}}</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

但是当列表为空时我该如何处理?我希望有一个消息框,其中列表中包含"无事件"或类似内容.唯一可以接近的是ng-switchwith events.length(如果对象而不是数组,我如何检查是否为空?),但这真的是我唯一的选择吗?

javascript angularjs angularjs-ng-repeat angularjs-ng-show

377
推荐指数
6
解决办法
23万
查看次数

AngularJS:$ observe和$ watch方法之间的区别

我知道,无论Watchers与Observers就将计算在东西$scope在AngularJS变化.但无法理解两者之间究竟有什么区别.

我最初的理解是Observers为角度表达式计算,这是HTML一侧的条件,Watchers执行$scope.$watch()函数时执行.我在想什么?

javascript angularjs

375
推荐指数
2
解决办法
12万
查看次数