const PrivateRoute = ({ component: Component, render, isSignedIn, ...rest }) => (
<Route
{...rest}
render={props => {
if (!isSignedIn) return (
<Redirect
to={{
pathname: '/login',
state: { referrer: props.history.location.pathname },
}}
/>
);
if (render) return render({ ...props });
return <Component {...props} />;
}}
/>
);
const mapStateToProps = (state) => ({
isSignedIn: isSignedInSelector(state),
});
export default connect(mapStateToProps)(PrivateRoute);
<Route path="/some-path/:color" component={SomeComponent} />
class SomeComponent extends React.Component {
render() {
const { match, elements } = this.props;
const { color } = match.params;
const filteredElements = elements.filter(el => el.color === color);
// ...
}
}
при использовании модульности css файлов в компоненте возникают проблемы при обращении в JS к нужному классу.
class Example extends React.Component {
state = {
shouldShowMenu: false,
};
handleToggleMenuClick = () => {
this.setState(state => ({
shouldShowMenu: !state.shouldShowMenu,
}));
};
render() {
const { shouldShowMenu } = this.state;
return (
<div>
<button onClick={this.handleToggleMenuClick}>Toggle menu</button>
{shouldShowMenu && <Menu />}
</div>
);
}
}
Какие области в веб — разработке осваивать в перспективе?
Никому не советую в IT. Особенно в веб. Это бесконечная гонка за востребованностью быть полезным на рутинной работе. Каждый год-два технологии обновляются, надо постоянно что-то учить-изучать, клиентам и работодателям надо, чтоб вы умели все больше и больше — это как если б врач каждые несколько лет перепрофилировался на другую медицинскую профессию: был травматологом, стал неврологом, потом урологом, эндокринологом, хирургом, медсестрой, хуй простой, нейрохирургом и т.д. — все, вроде, из одной области, но сильно разное. Т.е. ты выучился, работаешь себе, но при этом тебе надо учиться еще и еще, еще и еще, еще и еще.
Вчера фигачили на jQuery, сегодня утром уже React актуален, днем его догоняет Vue, потом появляются технологии, с виду упрощающие разработку, но по итогу у тебя одновременно запущено 10 программ, дюжина окон терминала, ты начинаешь ёбаться головой об стол, но это не помогает, ведь завтра фейсбук, гугол или какой-нибудь кореец придумают что-то новое и твои навыки уже будут не удел, если ты не успеешь изучить это «что-то новое». Сейчас ты работаешь, тебя считают профессионалом, а через год ты хочешь сменить место работы, заходишь на какой-нибудь moikrug и понимаешь, что ты где-то что-то проебал, ведь год назад все было гораздо проще и понятнее.
Зарплаты тут самые обычные, просто позволяют не выживать, как при среднестатистической зарплате, но позволять себе какие-то дорогие вещи вы не сможете, если не живете с мамой и вам родители не купили машину — да-да, львиную часть вашего бюджета будет сжирать аренда квартиры или ипотека, а так же кредит на машину до миллиона, а если повезет, то до полутора миллиона. А если вы ИП, то вам вообще никто и ни на что не даст кредит, ибо банки не любят ИП.
Чтоб стать Senior-разработчиком, который может зарабатывать ползарплаты депутата гос.думы, надо не просто много работать и учиться, уделяя этому ВСЮ жизнь на протяжении десятка лет, надо еще и быть предрасположенным к программированию, т.е. надо иметь определенный склад ума. Да, тут есть интеллектуальный порог, большинство не может выйти из Middle, который получает максимум $2000 — и то, должно сильно повезти, чтоб и зарплата хорошая, и работодатель адекватный, и с командой все классно было.
Я, как стал фронтенд-разработчиком, просрал друзей, т.к. много работал и учился (а если этого не делать, то вы станете не удел); просрал несколько лет жизни одним мимолетом, т.к. работа рутинная с утра до вечера; заработал проблемы со спиной, т.к. невозможно сидеть по 8 (а то и по 12) часов в сутки с ровной спинкой — заебешься контролировать; с ожирением можно бороться залом, но вы становитесь нелюдимым, вам не нравится находиться в незнакомом обществе.
Можно, конечно, пойти в местную конторку за 25к, исправлять чужой и свой устаревший говнокод в говнопроектах для бизнеса в вашем городе, смотреть как работодатель покупает себе новую Audi, дом в Сочи, зато у вас нормированный рабочий день, не надо учить ничего нового, вы можете вечером в пятницу пойти попить пивка с друзьями, но я даже не знаю какой вариант лучше — этот, или тот, что описан мной выше. Еще можно пойти на фриланс и осознать, что это похоже на городской рынок, на котором у кого кроссовки дешевле, у того их и покупают.
Единственный плюс, который я для себя вывел: я могу в одно лицо заебашить любой сайт (даже с бекендом, хоть там и будет набыдлокожено, я ведь фронт) для своего бизнеса и этот сайт будет круче почти любого конкурента. Но только бизнес это та еще рулетка — год будешь этим заниматься, прогоришь, вернешься в разработку, а ты, со своими древними знаниями, уже нахер никому не нужен.
PS: можно быть слепым котенком и думать: «вааау, как классно я живу, вон полторы тыщи баксов скопил за несколько месяцев, куул, поеду в отпуск не в Турцию, а еще мои знакомые у меня деньги занимают, значит я не так плох» — но идите на хуй с такой «счастливой» жизнью.
ААААА, Я НА ЭТО ВСЮ ЖИЗНЬ ПОТРАЧУ.ну да. ты, наверно, насмотрелся желтой прессы, где в IT входят за месяц и потом зарабатывают 100500 миллионов лежа на пляжу? я тебя огорчу. всё совсем не так. абсолютно.
function doSomething(){
let thisElement = this;
let someData = this.textContent; //"take some value"
doSomethingElse.call(this, someData, thisElement);
}
function doSomethingElse(Data, element) {
//do something with data and this element
}