2

当我尝试保存一些数据时,我遇到了一个奇怪的错误。

Uncaught Error: Cannot perform operations on a Metamorph that is not in the DOM.

我注意到实际 DOM 中有一些奇怪的东西

<h1>Posts page</h1>
<script id="metamorph-2-start" type="text/x-placeholder"></script>
<script id="metamorph-2-start" type="text/x-placeholder"></script>
<p>...</p>
...
<button data-ember-action="5" class="btn btn-warning">Cancel</button>
<script id="metamorph-2-end" type="text/x-placeholder"></script>
<table class="table table-striped table-hover>

有两个相同的变形标记,只有一个结束标记。我也尝试过不使用部分(即让代码位于 dom 中)。虽然重复的变形开始标签消失了,但在尝试保存时,它试图引用的变形标签不存在。

这是我的代码的 JSBin。JSBin 工作,这是有希望的。jsbin 和我的代码之间的唯一区别是我使用的是Ember App Kit。我的猜测是我在 ES6 设置上做错了什么。我在这里发布了我的控制器代码

var IndexController = Ember.ArrayController.extend({
  addingNew: false,
  actions: {
    createAccount: function() {
      var account = this.store.createRecord('account', {
        name: 'howdy',
      });
      account.save();
    },
    showNew: function() {
      this.set('addingNew', true);
    },
    cancelNew: function() {
      this.set('name', '');
      this.set('addingNew', false);
    }
  }
});

export default IndexController;

我做错了什么来得到这个错误?

4

1 回答 1

1

当我有包含 ember 标签的 html 注释时,我曾经遇到过这个问题。就像是:

<!-- {{#if something}}X{{else}}Y{{/if}} -->

于 2013-09-14T04:00:09.380 回答