Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
render: function() {
var createItem = function(itemText) {
return <li>{itemText}</li>;
};
return <ul>{this.props.items.map(createItem)}</ul>;
}
<ul>
{{#each item in items}}
<li>{{item}}</li>
{{/each}}
</ul>
render: function() {
var createItem = function(itemText) {
return <li>{itemText}</li>;
};
return <ul>{this.props.items.map(createItem)}</ul>;
}
createItem: function(itemText) {
return <li>{itemText}</li>;
},
render: function() {
return <ul>{this.props.items.map(this.createItem)}</ul>;
}
createItem.объявлять функцию внутри функции — это не очень хороший стиль программирования
def joinPaths(*args):
def preparePathPart(part): # prepare path parts to be joined by join method
# trim slashes from the end
# etc
def joinParts(paths, delimiter='/'): # another function inside of a function, join works only with prepared data
return args.join(delimiter)
return joinParts( map(args, preparePathPart) )
>>> joinPaths('/etc/', 'init.d/', 'some.conf')
'/etc/init.d/some.conf'
Ваше хранилище будет реагировать на посланное событие:
ListStore.items.push( payload.newItem );
ListStore.items_push( payload.newItem );
Flux для глупых людей