html – Cordova / Javascript – can not clone to add to

I create this model successfully with javascript:

enter the description of the image here

I create the model in a async a function:

this.createBoxes = function async () {
var row_counter = 0;
for (var i = 1; i <this.fake_data.length + 1; i ++) {

var item_box = document.createElement ("div");
item_box.style.flex = "0.5";
item_box.style.backgroundColor = "white";
item_box.style.display = "flex";
item_box.style.flexDirection = "column";
item_box.style.justifyContent = "flex-end";
item_box.id = "item_box _" + i;

var item_name = document.createElement ("h3");
item_name.style.flex = "0.2";
element_name.style.backgroundColor = "orange";
item_name.style.alignSelf = "center";
item_name.innerText = this.fake_data[i - 1].first name;
item_name.id = "item_name _" + i;

element_box.appendChild (element_name);

this_row = document.getElementsByClassName ("row")[row_counter];
this_row.appendChild (item_box);

if (i% 2 == 0) {
var pool = document.getElementById ("pool");
var inner_row = document.createElement ("div");
inner_row.style.display = "flex";
inner_row.style.flexDirection = "row";
inner_row.style.flex = "0.5";
inner_row.style.justifyContent = "space-around";
inner_row.style.alignItems = "center";
inner_row.style.backgroundColor = "green";
inner_row.className = "row";

pool.appendChild (inner_row);

row_counter ++;
}
else if (i == this.fake_data.length) {
return;
}
}
}

Then I do this:

                this.createBoxes (). then (function () {
var template = document.querySelector (# pool;);
var clone = template.content.cloneNode (true);
document.querySelector (".app"). appendChild (clone);
})

But as you can see on my screenshot, .app is empty. What am I doing wrong? I'm using Cordova and I suppose that he's able to use the model tag, I did not find anything that says I can not.