Angular 2 app的范围

时间:2016-09-21 03:46:02

标签: javascript angularjs angular

在Angular 1中,每个组件都有一个scope&我们也可以从html模板访问它们。

所以在Angular 2中我们可以声明这样的组件,

(function(app) {
  app.AppComponent =
    ng.core.Component({
      selector: 'my-app',
      template: '<h1>My First Angular 2 App</h1>'
    })
    .Class({
      constructor: function() {}
    });
})(window.app || (window.app = {}));

我的问题是,Angular 2中scope的类似内容是什么,我们可以从template进行访问?

如果Angular 2中没有scope,那么绑定html&amp;的替代方法是什么? javascript

2 个答案:

答案 0 :(得分:2)

Angular 2应用程序正在从彼此隔离的组件构建。您可以在AngularJS中考虑具有隔离范围的指令。因此,如果您需要从外部传递,则应始终传递给组件值。

Angular2中没有范围,它有一些不同的被称为区域。但作为对您问题的回答:您可以将值分配给类中的this对象,并且可以在模板中显示。

(function(app) {
  app.AppComponent =
   ng.core.Component({
     selector: 'my-app',
     template: '<h1>{{value}}</h1>'
   })
   .Class({
      constructor: function() { 
        this.value = "myValue";
      }
   });
})(window.app || (window.app = {})); 

有关区域的更多信息 - Zones in Angular2

答案 1 :(得分:0)

angular-2 中,您有this在{strong> angular-1

中作为scope
(function (app) {
    app.AppComponent =
     ng.core.Component({
         selector: 'my-app',
         template: '<h1>{{value}}</h1>'
     })
     .Class({
        var myValue='';
         constructor: function () {
             this.myValue= "myValue";
         }
     });
})(window.app || (window.app = {}));