0

我对组件的创建方式进行了一些修改。

代码如下所示:

  1. 问题是为什么我应该定义 var navbar = this; 姿势类 ComponentCtrl 如果我定义了 controllerAs : 'navbar' ?
  2. 第二个问题是这样,如果我用这种方式编写了控制器,我总是应该定义变量pose class ComponentCtrl来拥有变量全局?

    (function () {
    
     var navbar = this;
    
    class ComponentCtrl {
    constructor() { };
    
    
    $onInit() { 
      navbar.toggle = false;
    };
    
    
    activeMenu(name, $event) {
      console.log(name, navbar.toggle);
    
      if (navbar.toggle === true && navbar.name == name) {
        navbar.toggle = !navbar.toggle;
      }
      else if (navbar.toggle === false) {
        navbar.toggle = !navbar.toggle;
      }
      navbar.name = name;
    };
    };
    
    var MyComponent = {
    bindings: {
      user: '<'
    },
    controller: ComponentCtrl,
    controllerAs: 'navbar',
    templateUrl: '/navbar/index.html'
    };
    
    angular.module('app.navbar').component('navbar', MyComponent);
    })();
    
4

0 回答 0