Skip to content

Commit

Permalink
Merge pull request remix-run#175 from brigand/issue-170-dangerouslySe…
Browse files Browse the repository at this point in the history
…tInnerHTML

Merge props passed to Link remix-run#170
  • Loading branch information
ryanflorence committed Aug 7, 2014
2 parents a3885e1 + e3ba108 commit d63e85b
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
4 changes: 4 additions & 0 deletions docs/api/components/Link.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ name through the link's properties to the resulting url.
The className a `Link` receives when it's route is active. Defaults to
`active`.

### *others*

You can also pass props you'd like to be on the `<a>` such as a title, id, or className.

Example
-------

Expand Down
9 changes: 8 additions & 1 deletion modules/components/Link.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ var ActiveState = require('../mixins/ActiveState');
var withoutProperties = require('../helpers/withoutProperties');
var transitionTo = require('../helpers/transitionTo');
var makeHref = require('../helpers/makeHref');

var hasOwn = Function.prototype.call.bind(Object.prototype.hasOwnProperty);
/**
* A map of <Link> component props that are reserved for use by the
* router and/or React. All other props are used as params that are
Expand Down Expand Up @@ -124,6 +124,13 @@ var Link = React.createClass({
onClick: this.handleClick
};

// pull in props without overriding
for (var propName in this.props) {
if (hasOwn(this.props, propName) && hasOwn(props, propName) === false) {
props[propName] = this.props[propName];
}
}

return React.DOM.a(props, this.props.children);
}

Expand Down

0 comments on commit d63e85b

Please sign in to comment.