JavaScript
13
Вклад в тег
<Component />
- так позволяет писать движок jsx, который и React его использует.<Provider>
<MyComponent />//Вот сюда Provider пробросит (запишет) новые props.
</Provider>
{
chunkStore: {},
some: {}
}
{store: store.chunkStore}
то Provider в props своего потомка пробросит такое: store: store.chunkStore. И ты будешь обращаться внутри к store, но там будет только часть chunkStore (не весь объект, а его поле).class Div extends Component {
constructor(props) {
super(props);
this.props=props;
}
showAlert(value) {
alert(value);
}
render() {
this.showAlert(1);
return (
<div>
</div>
);
}
}
class Div extends Component {
constructor(props) {
super(props);
this.props=props;
}
showEvent(e) {
alert(e);
}
render() {
this.showAlert(1);
return (
<div>
<button onClick={this.showEvent}></button>
</div>
);
}
}
var self = this
- сохранение в переменную.apply
- вызов метода с явной передачей контекста.bind(some)
- привязка контекста. Говорит функции что использовать в качестве контекста, потом изменить контекст нельзя.()=>{}
- стрелочная функция, которая в отличие от function(){}
- определяет контекст не в момент вызова, а в момент объявления.let list = $('.class1');
for(let i = 0; i < list.length; i++) {
if(list.eq(i).hasClass('class2')) {
console.log(i);
break;
}
}
let list = $('.class1');
for(let i = 0; i < list.length; i++) {
if(list[i].className.includes('class2')) {
console.log(i);
break;
}
}
$('.class1').each((index, item) => {
if(item.className.includes('class2')) console.log(index)
} );