title: When building a UI Kit in Backbone.js, should a View to create Model?
body: <p>So I'm creating reusable UI components that can be easy instantiated later, eg:</p>
  
  <pre><code>this.emailInput = new TextInput() {
      label : 'Email Address',
      validators : [validatorFunc, secondValidatorFunc],
      placeholder : 'email@domain.com'
  });
  </code></pre>
  
  <p>Would it make sense for this View to create its own Model that would store a <code>value</code> on keydown and handle the validation? Would it still make sense if there were no validation?</p>
  
  <p>And then more complicated, with an autocomplete:</p>
  
  <pre><code>this.countryInput = new AutocompleteInput() {
      label : 'Country',
      placeholder : 'eg. United States',
      suggestions [ 
          { id : '1', value : 'USA', text : 'United States' },
          { id : 2, value : 'DE', text : 'Germany' },
          ... 
      ]
  });
  </code></pre>
  
  <p>Would it make sense for those suggestions to be stored in a Model of their own that is created by the View as well? Should I also store the <code>selected</code> suggestion in that Model?</p>
  
  <p>It seems like without using a Model I've been replicating a lot of the logic the Model gives you automatically.</p>
  
  <p>I've also been thinking about having each <code>suggestion</code> be it's own View that creates its own Model, and have the <code>suggestionListView</code> know about the Collection. Is that how Collection/ListViews work? The ListView knows the Collection and the ItemView knows a Model?</p>