1

Aurelia Q & A のこの例に従って、React を使用して Aurelia カスタム要素を作成しようとしていますが、次の例外が発生します。

Potentially unhandled rejection [1] TypeError: Cannot read property 'render' of undefined

私が間違っていることは何ですか?ここに私のテストコード:

test.html

<import from="./myelement"></import>
<my-element foo.bind="Value"></my-element>

myelement.html

<template>
  <input type="text" placeholder="user">
</template>

myelement.js

import {Behavior} from 'aurelia-framework';
import {React} from 'aurelia-framework';

export class MyElement {
  static metadata(){
    return Behavior
      .customElement('my-element')
      .withProperty('foo')
      .noView();
  }

  static inject() {
    return [Element];
  }

  constructor(element) {
    this.element = element;
    console.log('this:', this);
    console.log('element:', element);
  }

  bind() {
    // React.render(<MyReactElement foo={this.foo} />, this.element);
    React.render(React.createElement(MyReactElement, { foo: this.foo }), this.element);
  }

  fooChanged() {
    this.bind();
  }
}
4

1 に答える 1