const Grid = React.forwardRef((props, ref) => (
<div ref={ref}>{props.children}</div>
));
export class MyComponent extends React.Component {
render() {
return (
<Grid innerRef={this.props.forwardRef} />
);
}
}
const Grid = props => (
<div ref={props.innerRef}>{props.children}</div>
);
const greetings = 'Hello, friend';
let h1;
function say() {
h1 = document.createElement('h1');
h1.innerHTML = greetings;
document.body.appendChild(h1);
}
say();
if (module.hot) {
module.hot.dispose(() => {
document.body.removeChild(h1);
});
module.hot.accept();
}
const greetings = 'Hello, friend';
export default greetings;
import './styles.css';
let greetings = require('./greetings').default;
let h1;
function say() {
h1 = document.createElement('h1');
h1.innerHTML = greetings;
document.body.appendChild(h1);
}
say();
if (module.hot) {
module.hot.accept('./greetings', () => {
greetings = require('./greetings').default;
document.body.removeChild(h1);
say();
});
}
import './styles.css';
import greetings from './greetings';
let h1;
function say() {
h1 = document.createElement('h1');
h1.innerHTML = greetings;
document.body.appendChild(h1);
}
say();
if (module.hot) {
module.hot.accept('./greetings', () => {
document.body.removeChild(h1);
say();
});
}
if (rowIdx % 6 === 0)
это "каждый шестой" а не "первые шесть"if (rowIdx < 6)
let firstSix = arr.slice(0, 6)
var result = data.reduce((acc, item)=>{
var date = item.date.split(' ')[0]
if (acc[date]) {
acc[date].push(item)
} else {
acc[date] = [item]
}
return acc
}, {})
https://jsfiddle.net/d7muwhuz/ function groupByDate(arr) {
//свертка массива во временный объект, с датами в качестве ключей
const temp = arr.reduce((acc, elem) => {
// делим строку по пробелу и извлекаем 0й элемент '2018-03-05 12:00' -> '2018-03-05'
const date = elem.date.split(' ')[0];
//если ключа-даты еще нет в объекте, записываем туда пустой массив
if(!acc[date]) {
acc[date] = [];
}
// ложим текущий элемент в соответствующий массив
acc[date].push(elem);
return acc;
}, {});
// извлекаем все ключи получившегося объекта в массив
// и преобразуем массив ключей в массив значений
return Object.getOwnPropertyNames(temp).map(k => temp[k]);
}
<span>Элемент1</span>
<span>Элемент2</span>
<span>Элемент3</span>
<span>Элемент4</span>
<span>Элемент5</span>
<span>Элемент6</span>
<div>
<span>Элемент1</span>
<span>Элемент2</span>
<span>Элемент3</span>
</div>
<div>
<span>Элемент4</span>
<span>Элемент5</span>
<span>Элемент6</span>
</div>
var span = $('span'),
cntGroup = 3; // по сколько элементов в группе
var divsArr = span.get();
for(var i = 0; i < span.length; i += cntGroup){
$(divsArr.slice(i,i+cntGroup)).wrapAll('<div>');
}
function Counter () {
var _counter = -1;
return {
valueOf: function () {
_counter++;
return _counter;
}
}
}
var cnt = new Counter();
alert(cnt);
alert(cnt);
var makeCounter = function(counterName){
var c = 0;
Object.defineProperty(window, counterName, {
enumerable: false,
configurable: false,
get:function(){
return c++;
}
});
}
makeCounter('counter');
counter;
counter;
counter;
console.log(counter);