我最近了解到,在 AngularJS 2.0 中,不会有 $scope. 有什么替代方法?我将如何在组件之间共享数据?scope 选项在指令中是否可用?更实际地说,有没有我可以熟悉的当前替代方案? 我知道 controller as 但我读到控制器也将被淘汰. 对 Angular 团队已经开始的这样一场革命感到困惑. 感谢您的帮助! 解决方案 Angular 2.0 使用 this 而不是 $scope. 2.0 中的主要变化之一是控制器的消亡,以及对组件的新重视.转向基于组件的应用程序的一大优势是更容易定义它们的界面;此外,HTML 元素已经在事件、属性和属性中具有易于映射的接口. 查看 AngularJS 1.3 到 2.0 的迁移这里.另请参阅此处的完整文档 Angular 2.0
以下是关于 angularjs-2.0 的编程技术问答
全部: 我很漂亮到AngularJS 2.0,当我读它的QuickStart和一些其他帖子时,有一个"导入"线,如: import {Component, View, bootstrap} from 'angular2/angular2'; 我想知道那个'Angular2/Angular2'在哪里,我如何知道我应该导入的根目录(或结构)是什么? 感谢 解决方案 重要!!更新到Angular2 Beta !! Yups如上所述,@guenter angular2/angular2不是任何路径,而是它是预定义的Angular2束.为此,我们已经导入了 System.js在index.html中的Angular之前. 如果您查看 Angular Bundal 你可以看到有System.register("angular2/core", .... 并告诉systemjs该做什么.你可以在这里查找... 随着Angular2在Beta时,现在不
我有Parent组件和Child指令. Parent通过属性events-data具有传递给Child的整数阵列. 问题是,NG-for循环可以看到当单击Add按钮时会看到更改(并且将整数添加到阵列)但在子指令中的onChange函数永远不会再次调用加载页面.所以孩子看到阵列的初始内容,但在此之后永远不会更新. import {NgFor,Component,View, Directive, LifecycleEvent} from 'angular2/angular2'; import {routerDirectives} from 'angular2/router'; import {Inject} from 'angular2/di'; @Directive({ selector:'child', lifecycle: [ LifecycleEvent.onChange ], properties: [ 'data: events-data'
在使用选择器'some-comp'的组件之后,使用在页面中只能工作一次.我想在多次帮助中使用它,这是一个示例代码: @Component({ selector: 'some-comp' }) @View({ template: 'component template' }) class SomeComponent { } bootstrap(SomeComponent); 解决方案 引导组件实际上是作为一个应用程序,如果要多次使用相同的组件,则需要将其置于指令中,然后在您引导的应用程序中包含该指令. 查看此菜单组件作为示例,您将看到多次使用的组件以及组件. https://github.com/dylanb/axponents/tree/master/angular2
我正在尝试在Angular2组件中定义TemplateURL时使用相对路径,如下所述: http://schwarty.com/2015/12/22/Angular2相对路径 - TemplateURL-and StyleUrls/ @Component({ selector: 'login-app', moduleId: module.id, templateUrl: './app.html' }) 虽然我继续得到: 错误:模块未定义 我在ts编译设置上使用commonjs. 如何使它工作? 解决方案 这似乎不是对我有用的. 我可以在github repo 中看到角度2,该功能据说在12月初添加,但它根本不起作用,我可以告诉. 文档尚未更新以反映它,并且它仍然缺少我可以告诉的正确测试. 更新: 这是正在发生的事情的一部分. 这需要一个commonjs特定的功能工作,所以你必须拥有它模块系统中使用的tsconf
如我所知,在Angular 1.x中,我可以使用$ SCE服务来满足我这样的要求 myApp.filter('trustAsHTML', ['$sce', function($sce){ return function(text) { return $sce.trustAsHtml(text); }; }]); 和在html文件中使用,如此 {{ htmlString || trustAsHTML }} 是否有一个像$ sce或某些管道或某些管道或任何方法都可以在AngularJS 2版本中有能力的方法? 在Angular2中,没有 ng-include ,trustAsHtml,ng-bind-html也不相似,因此您的最佳选择是绑定到innerHtml.显然这让你打开了所有类型的攻击,所以这取决于你解析/逃避内容,为此可以使用管道. @Pipe({name: 'escapeHtml', pure: false}) class EscapeH
我一直在想这项工作,但还没有能够.如果有可能,请指向样本. 解决方案 该团队正在处理2.0的角度港口,您可以找到源代码这里 我创建了一个快速演示,显示如何将它与角2: 一起使用 import {Component, View, bootstrap} from 'angular2/angular2'; import {MdInput, MdInputContainer} from 'angular2_material/material'; // Defines a new HTML tag @Component({ selector: 'material-demo' }) @View({ template: ` Your name
我想在Angular2组件中实现用于* ng的Infinite滚动.为此,我需要通过角度方法向窗口挂接挂钩.然后,当用户滚动传递页面的某些点时,我将能够将更多项目加载到数据项阵列中. 任何人都有想法如何从angular(内部ng2组件内)挂钩窗口事件? 解决方案 使用(target:event)="handler()"表示要侦听全局事件.您可以使用window,document或body作为目标.对于您的情况,它将是(window:scroll)="onScroll($event)".看这个propun . import {Component} from 'angular2/core' @Component({ selector: 'my-app', template: `
Hello Angular2
...