1111 Я сделал это, думая об обратном. Вместо того чтобы генерировать элементы div сверху вниз, я генерировал их один за другим в одной строке с соответствующим содержимым, переключаясь на новую строку, когда это необходимо. Код должен работать для любого количества строк, которое вы хотите.
Я использовал трюк с CSS-свойством clear (как clear: both
). Свойство clear определяет, по каким сторонам элемента плавающие элементы не могут плавать, поэтому это своего рода «сброс». Этот сброс происходит, когда j = 0
, иначе мы генерируем первый элемент в этой строке. i + divider * j + 1
дает вам индекс текущего элемента (вы можете сделать математику с ручкой и бумагой, чтобы увидеть, что он работает соответственно).
class TodoApp extends React.Component {
constructor(props) {
super(props);
}
renderLogic() {
let items = [0,1,2,3,4,5,6,7,8,9,10,11,12,13];
let divider = 5;
let boxes = [];
for (let i = 0; i < divider; ++i) {
for (let j = 0; j < items.length / divider + 1; ++j) {
if (i + divider * j >= items.length)
continue;
if (j == 0) {
boxes.push((
{i + divider * j + 1}
))
} else {
boxes.push((
{i + divider * j + 1}
))
}
}
}
return boxes;
}
render() {
return (
{this.renderLogic()}
);
}
}
ReactDOM.render( , document.querySelector("#app"))
.sample-container {
background-color: green;
}
.box {
background-color: green;
border: 1px solid black;
float: left;
margin: 5px;
width: 50px;
height: 50px;
}
.newline {
clear: both;
}
Примечание. Я использовал + 1
в {i + divider * j + 1}
только для отображения. Надеюсь, что это соответствует вашим потребностям. Ура!
См. документация EC2 относительно предмета .
Выполнение:
wget -q -O - http://169.254.169.254/latest/meta-data/instance-id
, Если Вам нужен программный доступ к идентификатору экземпляра из сценария,
die() { status=$1; shift; echo "FATAL: $*"; exit $status; }
EC2_INSTANCE_ID="`wget -q -O - http://169.254.169.254/latest/meta-data/instance-id || die \"wget instance-id has failed: $?\"`"
пример более усовершенствованного использования (получают идентификатор экземпляра, а также зону доступности и регион, и т.д.):
EC2_INSTANCE_ID="`wget -q -O - http://169.254.169.254/latest/meta-data/instance-id || die \"wget instance-id has failed: $?\"`"
test -n "$EC2_INSTANCE_ID" || die 'cannot obtain instance-id'
EC2_AVAIL_ZONE="`wget -q -O - http://169.254.169.254/latest/meta-data/placement/availability-zone || die \"wget availability-zone has failed: $?\"`"
test -n "$EC2_AVAIL_ZONE" || die 'cannot obtain availability-zone'
EC2_REGION="`echo \"$EC2_AVAIL_ZONE\" | sed -e 's:\([0-9][0-9]*\)[a-z]*\$:\\1:'`"
можно также использовать curl
вместо wget
, в зависимости от того, что установлено на платформе.
См. , это сообщение - отмечает, что IP-адрес в данном URL является постоянным (который смутил меня сначала), но возвращенные данные характерны для Вашего экземпляра.