Commit Graph

448 Commits

Author SHA1 Message Date
Paul O’Shannessy 04bfa545f7 Remove "Scaling Up" 2013-07-16 13:55:42 -07:00
petehunt e9e8934577 fix markup bugs 2013-07-14 18:46:50 -07:00
petehunt 2397e35cdd switch to guides 2013-07-14 18:43:33 -07:00
petehunt 0e585d8102 put it all together 2013-07-14 18:42:39 -07:00
petehunt 6009934176 cleanup some files, move tutorial 2013-07-14 18:35:59 -07:00
petehunt b20c2641d4 move docs around, add likebutton 2013-07-14 18:31:46 -07:00
petehunt 445a0dac37 tweak the source 2013-07-14 18:25:51 -07:00
petehunt 33abe80b59 scaling up fix 2013-07-14 18:00:17 -07:00
petehunt d7cf1c509b delete old docs 2013-07-14 17:57:39 -07:00
petehunt 7d97f26870 add more examples 2013-07-14 17:52:25 -07:00
petehunt b2107ba80b update and move tutorial 2013-07-14 17:49:07 -07:00
petehunt d0c431a2a3 Fix comma 2013-07-14 17:15:28 -07:00
Pete Hunt ab7ef4ed3b Update 08-working-with-your-environment.md 2013-07-14 17:07:58 -07:00
petehunt 204edb4a27 fix some links 2013-07-14 17:07:57 -07:00
Pete Hunt 3c742d50b6 Update 03-interactivity-and-dynamic-uis.md 2013-07-14 17:07:57 -07:00
Pete Hunt 1c51cc34cd Update 02.1-jsx-in-depth.md 2013-07-14 17:07:57 -07:00
Pete Hunt 64b9b55a0d Update 02.2-jsx-gotchas.md 2013-07-14 17:07:57 -07:00
Pete Hunt f9741b0728 Update 01-motivation.md 2013-07-14 17:07:57 -07:00
petehunt 3085254a91 reorg 2013-07-14 17:07:57 -07:00
petehunt 0de35588c1 jsx gotchas, reference 2013-07-14 17:07:57 -07:00
petehunt 21ea1ac61e add working with your environment section 2013-07-14 17:07:57 -07:00
petehunt 4fccaa514b @vjeux comments 2013-07-14 17:07:57 -07:00
petehunt 13ad0c500b antipatterns 2013-07-14 17:07:57 -07:00
petehunt 126a7f5c11 more jsx handholding 2013-07-14 17:07:57 -07:00
petehunt bb3bd76fe9 Reorg docs, write a lot of content, import a lot of stuff from dex 2013-07-14 17:07:57 -07:00
petehunt 4bbdcdb0b8 another comment 2013-07-14 17:07:57 -07:00
petehunt d294a7f30f more scaling up 2013-07-14 17:07:57 -07:00
petehunt de8d0e35a2 more state machiens 2013-07-14 17:07:57 -07:00
petehunt faa84b5b85 further improvements 2013-07-14 17:07:57 -07:00
petehunt e1e5f17b27 link to blog 2013-07-14 17:07:57 -07:00
petehunt 0e63000b5c even better toc 2013-07-14 17:07:57 -07:00
petehunt 151997b1e1 Start on section 04 2013-07-14 17:07:57 -07:00
petehunt a36bcd33c6 more toc 2013-07-14 17:07:57 -07:00
petehunt 9194fea915 Add table of contents info 2013-07-14 17:07:57 -07:00
petehunt 67d9891926 add seconds 02.1 and 03 2013-07-14 17:07:56 -07:00
petehunt 05341fb3b3 Add more jsx docs rather than linking 2013-07-14 17:07:56 -07:00
petehunt c82afd7e54 Some style changes 2013-07-14 17:07:56 -07:00
petehunt ed98f2ca57 Make less facebooky 2013-07-14 17:07:56 -07:00
petehunt 462e450bb3 First two sections of newdocs 2013-07-14 17:07:56 -07:00
Paul O'Shannessy 06e5fcc010 "use strict" for ReactDoNotBindDeprecated 2013-07-12 15:42:46 -07:00
Paul O'Shannessy ac84652e50 Cleanup console.* uses
* Stop doing `global.console && ...`
* Make sure all uses are behind `__DEV__` checks so they get stripped out
2013-07-12 15:42:25 -07:00
Tim Yung eee3980749 Stringify value in ReactDOMInput / ChangeEventPlugin
This fixes two bugs related to string-casting in React:

 # Setting `<input value={0} />` would use an empty `value` because `0` is falsey.
 # Using `onChange` and `setState` with non-strings could lead to an infinite loop.

The latter is possible with controlled inputs when:

 - User changes input value.
 - `onpropertychange` fires.
 - `ChangeEventPlugin` dispatches `onChange`.
 - A handler responds via `this.setState` with a non-string value (e.g. a number).
 - The input re-renders and re-sets `value`.
 - The new `value` is not a string, but the current `value` (read from the element) is cast to a string automatically by the browser.
 - This triggers another `onpropertychange`.
 - `ChangeEventPlugin` dispatches another `onChange`.
 - ...
2013-07-12 15:40:55 -07:00
Paul O'Shannessy cf83fbe397 Remove references to React.autoBind
Cleaned up a comment and removed a useless test.
2013-07-11 23:07:01 -07:00
Paul O’Shannessy e221ff7cd4 Add exports to globals for jshint
This is a bit unfortunate, but it'll shut lint up for the time being. We
can't just change the modules to use `module.exports = { ... }` due to
how we handle circular dependencies internally (`ReactMount` require
`ReactID` and vice versa).
2013-07-11 17:20:21 -07:00
Paul O’Shannessy 607de16d82 New blog post: Props in v0.4 2013-07-11 15:52:29 -07:00
Paul O'Shannessy d762627312 Rename props to propTypes
This does two things:

 - Rename `props` to `propTypes`.
 - Rename `ReactProps` to `ReactPropTypes` (and `React.Props` to `React.PropTypes`)
2013-07-10 15:06:18 -07:00
Tim Yung 10dab495f2 Stop Unnecessary Purging of Node Cache
When each component unmounts, it already cleans up its respective entry in the node cache. Let's stop blowing away the entire node cache unnecessarily.

This should improve performance because a React component's root will never need to be searched for more than once.
2013-07-10 15:05:18 -07:00
Tim Yung ee1335b6a2 Delete setTextNodeValueAtIndexByParentID
This does not appear to be used anywhere.
2013-07-10 15:05:06 -07:00
Tim Yung 8687645c50 Reduce Lookup for Missing Lifecycle Methods
This is a micro-optimization that reduces the lookup time for missing lifecycle methods. The extra amount of memory is linear to the number of components that exist on a page which I think is a worthwile trade-off.
2013-07-10 15:04:44 -07:00
Tim Yung 7b68fcd408 Short-circuit updatePropertyByID
When `ReactNativeComponent` updates, it calls `updatePropertyByID` in `ReactDOMIDOperations` which calls `DOMPropertyOperations`. However, in `ReactDOMIDOperations`, we will lookup the node for an ID using `ReactID.getNode`. This wastes time looking for nodes when we may not need to ever update it (e.g. `children`).

This changes `ReactNativeComponent` to bail out sooner.
2013-07-10 15:04:23 -07:00