Skip to content

Commit 6b9c8a4

Browse files
committed
Use object to cache styleName translations.
1 parent 3c1ec83 commit 6b9c8a4

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/parseStyleName.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,20 @@
11
import _ from 'lodash';
22

3+
let styleNameIndex;
4+
5+
styleNameIndex = {};
6+
37
export default (styleNamePropertyValue: string, allowMultiple: boolean): Array<string> => {
48
let styleNames;
59

6-
styleNames = styleNamePropertyValue.split(' ');
7-
styleNames = _.filter(styleNames);
10+
if (styleNameIndex[styleNamePropertyValue]) {
11+
styleNames = styleNameIndex[styleNamePropertyValue];
12+
} else {
13+
styleNames = _.trim(styleNamePropertyValue).split(' ');
14+
styleNames = _.filter(styleNames);
15+
16+
styleNameIndex[styleNamePropertyValue] = styleNames;
17+
}
818

919
if (allowMultiple === false && styleNames.length > 1) {
1020
throw new Error('ReactElement styleName property defines multiple module names ("' + styleNamePropertyValue + '").');

0 commit comments

Comments
 (0)