title: new object in constructor from class undefined
body: <p>I'm creating a new object from a class in a constructor, and whenever it runs I get an error that operate is undefined in the method, though it is defined in the constructor. Operate itself is thoroughly tested and works great in a separate context so that's not the problem. I'm building it with Babel, <em>not</em> running it directly in Node 7.0.0</p>
  
  <pre><code>import Operate from "./operate"
  
  export default class {
  
    constructor(Schema) {
      this.schema = Schema
      this.operate = new Operate(this.schema)
      console.log(this.operate.run) // &lt;- Logs just fine
    }
  
    update(req, res) {
      console.log(this.operate.run) // &lt;- Nada
      this.operate.run(req.body)
        .then(value =&gt; {
          res.status(200).json(value)
        })
    }
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/0MR40.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0MR40.png" alt="enter image description here"></a></p>
  
  <p>This feels like I'm missing something fundamental. I've heard this isn't a great pattern anyway, so please feel free to suggest a better way. Thanks so much in advance.</p>
  
  <p>UPDATE: This is how update is being used. I don't suspect there's any problem here, as it has worked just fine when I had been importing controller as a function from another module, instead of a class</p>
  
  <pre><code>import {Router, } from "express"
  import Controller from "../controller"
  import User from "./user.model"
  
  let controller = new Controller(User)
  let router = new Router()
  
  router.post("/", controller.update)
  
  module.exports = router
  </code></pre>