aurelia中的参考文献

时间:2017-06-19 13:35:53

标签: javascript aurelia

我有一个显示两组不同数据的视图: 让我们说一下proposalDetails和orderDetails。 我继承了一些试图将这两个类备份为成员的代码。

下面评论中的代码问题是没有克隆类函数。只有会员。另一方面,当我来回切换(在proposalDetails和orderDetails之间)时,将2个类作为引用保持正常工作

有没有理由保持参考是错误/不正确的做法?

当我修改proposalDetails时,是否存在修改orderDetails的危险?

switchView(viewName) {       
 if (viewName === 'proposal') {

      //this.orderBackup = JSON.parse(JSON.stringify(this.orderDetails));
      //this.orderDetails = JSON.parse(JSON.stringify(this.proposalDetails));

      //'Cloning' the member like this does not include all the class functions
      //I changed it to keep just the reference

      this.orderBackup = this.orderDetails;
      this.orderDetails = this.proposalDetails;

      $('#view_ordered').removeClass('active');
      $('#view_proposal').addClass('active');

      this.formDisabled = true;
      return;
    }

    this.orderDetails = this.orderBackup;
}

1 个答案:

答案 0 :(得分:1)

除了Aurelia促进为您的视图模型使用类之外,您所要求的并不是Aurelia特有的。我已经使用了你用来做简单克隆类的JSON技巧,它完成了工作,说实话并不是你能做的更糟糕的事情。

值得指出的是,Lodash还有一些很好的实用功能,可用于克隆深层和浅层物体。