In my render method I have something like

```
<input type={dynamicTypeValue} value={dynamicValue} />
```

If I first render this input as a number, (e.g. `dynamicTypeValue = 'number'; dynamicValue = 5`) but then change the input to a string: (`dynamicTypeValue = 'string'; dynamicValue = '01/01/2016'`) I get a warning 
that the new value is not a valid number:

```
The specified value "01/01/2000" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
DOMPropertyOperations.js:142 The specified value "01/01/2012" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
```

![screen shot 2016-04-07 at 6 07 45 pm](https://cloud.githubusercontent.com/assets/1074773/14368429/a7d61baa-fceb-11e5-91f0-199ff95aa276.png)

Is this expected behavior?

}
    for (propKey in nextProps) {
      var nextProp = nextProps[propKey];
      var lastProp =
        propKey === STYLE ? this._previousStyleCopy :
        lastProps != null ? lastProps[propKey] : undefined;
      if (!nextProps.hasOwnProperty(propKey) ||
          nextProp === lastProp ||
          nextProp == null && lastProp == null) {
        continue;
      }
      if (propKey === STYLE) {
        if (nextProp) {
          if (__DEV__) {
            checkAndWarnForMutatedStyle(
              this._previousStyleCopy,
              this._previousStyle,
              this
            );
            this._previousStyle = nextProp;
          }
          nextProp = this._previousStyleCopy = Object.assign({}, nextProp);
        } else {
          this._previousStyleCopy = null;
        }
        if (lastProp) {
          
          for (styleName in lastProp) {
            if (lastProp.hasOwnProperty(styleName) &&
                (!nextProp || !nextProp.hasOwnProperty(styleName))) {