;(function() {
window.createMeasureObserver = (measureName) => {
var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`;
performance.mark(`${markPrefix}-start`);
return {
end: function() {
performance.mark(`${markPrefix}-end`);
performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`);
performance.clearMarks(`${markPrefix}-start`);
performance.clearMarks(`${markPrefix}-end`);
}
}
};
/**
* Gerenciador de eventos
*/
window.gevent = {
stack: [],
RUN_ONCE: true,
on: function(name, callback, once) {
this.stack.push([name, callback, !!once]);
},
emit: function(name, args) {
for (var i = this.stack.length, item; i--;) {
item = this.stack[i];
if (item[0] === name) {
item[1](args);
if (item[2]) {
this.stack.splice(i, 1);
}
}
}
}
};
var runningSearch = false;
var hadAnEvent = true;
var elementsToWatch = window.elementsToWatch = new Map();
var innerHeight = window.innerHeight;
// timestamp da última rodada do requestAnimationFrame
// É usado para limitar a procura por elementos visíveis.
var lastAnimationTS = 0;
// verifica se elemento está no viewport do usuário
var isElementInViewport = function(el) {
var rect = el.getBoundingClientRect();
var clientHeight = window.innerHeight || document.documentElement.clientHeight;
// renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content
if(el.className.includes('related-content-front')) return true;
// garante que usa ao mínimo 280px de margem para fazer o lazyload
var margin = clientHeight + Math.max(280, clientHeight * 0.2);
// se a base do componente está acima da altura da tela do usuário, está oculto
if(rect.bottom < 0 && rect.bottom > margin * -1) {
return false;
}
// se o topo do elemento está abaixo da altura da tela do usuário, está oculto
if(rect.top > margin) {
return false;
}
// se a posição do topo é negativa, verifica se a altura dele ainda
// compensa o que já foi scrollado
if(rect.top < 0 && rect.height + rect.top < 0) {
return false;
}
return true;
};
var asynxNextFreeTime = () => {
return new Promise((resolve) => {
if(window.requestIdleCallback) {
window.requestIdleCallback(resolve, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(resolve);
}
});
};
var asyncValidateIfElIsInViewPort = function(promise, el) {
return promise.then(() => {
if(el) {
if(isElementInViewport(el) == true) {
const cb = elementsToWatch.get(el);
// remove da lista para não ser disparado novamente
elementsToWatch.delete(el);
cb();
}
}
}).then(asynxNextFreeTime);
};
// inicia o fluxo de procura de elementos procurados
var look = function() {
if(window.requestIdleCallback) {
window.requestIdleCallback(findByVisibleElements, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(findByVisibleElements);
}
};
var findByVisibleElements = function(ts) {
var elapsedSinceLast = ts - lastAnimationTS;
// se não teve nenhum evento que possa alterar a página
if(hadAnEvent == false) {
return look();
}
if(elementsToWatch.size == 0) {
return look();
}
if(runningSearch == true) {
return look();
}
// procura por elementos visíveis apenas 5x/seg
if(elapsedSinceLast < 1000/5) {
return look();
}
// atualiza o último ts
lastAnimationTS = ts;
// reseta status de scroll para não entrar novamente aqui
hadAnEvent = false;
// indica que está rodando a procura por elementos no viewport
runningSearch = true;
const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve());
// obtém todos os elementos que podem ter view contabilizados
//elementsToWatch.forEach(function(cb, el) {
// if(isElementInViewport(el) == true) {
// // remove da lista para não ser disparado novamente
// elementsToWatch.delete(el);
// cb(el);
// }
//});
done.then(function() { runningSearch = false; });
// reinicia o fluxo de procura
look();
};
/**
* Quando o elemento `el` entrar no viewport (-20%), cb será disparado.
*/
window.lazyload = function(el, cb) {
if(el.nodeType != Node.ELEMENT_NODE) {
throw new Error("element parameter should be a Element Node");
}
if(typeof cb !== 'function') {
throw new Error("callback parameter should be a Function");
}
elementsToWatch.set(el, cb);
}
var setEvent = function() {
hadAnEvent = true;
};
window.addEventListener('scroll', setEvent, { capture: true, ive: true });
window.addEventListener('click', setEvent, { ive: true });
window.addEventListener('resize', setEvent, { ive: true });
window.addEventListener('load', setEvent, { once: true, ive: true });
window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true });
window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE);
// inicia a validação
look();
})();
Sem desperdício na cozinha: como aproveitar 100% dos alimentos nas receitas
Saiba como aproveitar todas as partes de legumes, verduras e frutas na cozinha
Imagem: Unsplash
Claudia Dias
Colaboração para Nossa
14/05/2020 04h00
Manter um estilo de vida com pouco desperdício nunca esteve tão em alta e é possível aproveitar muito mais dos alimentos do que você imagina.
Para a chef Paula Labaki é uma das defensoras da prática. "Podemos usar os vegetais e verduras em sua totalidade", garante. O mesmo ocorre com as frutas - pode-se aproveitar a maioria das cascas e até sementes. Ela lembra que os alimentos têm muitos nutrientes exatamente nas partes que, muitas vezes, são descartadas, como raízes e as cascas.
Casca, talos e mais partes de vegetais podem virar base para receitas deliciosas
Imagem: Unsplash"O mais importante é termos a consciência de que, na cozinha, não existe lixo. Além disso, quanto menos industrializados usamos, menos lixo vamos gerar. E nosso planeta está no limite: ou cuidamos dele ou ele entra em colapso", argumenta.
Como aproveitar
A chef pontua que a forma de uso de cada uma das partes - ditas como "descartes" - são variadas. Deve-se levar em conta a textura de cada uma delas para definir o melhor preparo.
Algumas aplicações sugeridas são:
Abóbora: além da polpa, aproveitam-se casca e semente. Da casca, podem ser feitos chips e, ainda, aproveitá-la em receitas. As sementes viram ótimo tira-gosto quando secas e salgadas.
Agrião: os talos podem ser utilizados em patês, refogados, recheios de torta e até sopa.
Alho-poró: é 100% aproveitável. Com a parte verde-escuro podem ser feitos caldos ou bolinhos. Já a raiz, frita, permite ser usada na finalização de risotos.
Batata: a casca se transforma em salgadinho quando seca no forno e, depois, salgada.
Beterraba: os talos também podem ser usados em diferentes receitas, desde patês até recheios de torta, sopa e refogados. A casca ainda é aproveitada em suflês.
Brócolis: além de refogados, os talos podem ser aproveitados em bolinhos, patês, recheios de torta e sopas.
Cebola: a casca rende um caldo de sabor e cores incríveis.
Cenoura: a rama da cenoura pode virar um delicioso pesto, enquanto o talo rende deliciosos bolinhos.
Couve-flor: as folhas viram creme e bolinhos. São igualmente boas quando refogadas.
Mandioquinha: assada no forno ou frita e, depois, salgada, a casca se transforma em delicioso aperitivo.
Entre as frutas, não é diferente. A maioria permite ser aproveitada quase integralmente:
Abacaxi: mais que composições líquidas, como suco e chás, a casca é boa para ser usada em farofas e bolos, entre outros doces.
Banana: a casca, depois de muito bem higienizada, pode ser refogada, virar ragu, bolo, pão, compota, brigadeiro e até farinha, entre outras ideias criativas na cozinha.
Laranja: a casca é deliciosa quando cristalizada, usada em bolo ou para saborizar doces.
Mamão: a casca rende geleias e compotas.
Manga: a casca pode ser usada no preparo de sorvetes e doces, como a receita de canjica.
Melancia: a parte branca (entrecasca) se transforma em doces caseiros e até compotas.
Frutas também oferecem potencial para receitas variadas e zero desperdício
Imagem: UnsplashNão exagere no cozimento
Como todo o legume e verdura, a chef observa que não se deve cozinhar demais as raízes, talos e folhas, para que suas características nutritivas não sejam perdidas. "Com tubérculos, é sempre melhor assá-los com a casca, preservando seus nutrientes", comenta Paula.
A higienização é a mesma de qualquer parte do vegetal ou frutas: uma solução de hipoclorito resolve - deve-se seguir as instruções da embalagem, mas geralmente consiste em 1 gota para cada 1 litro.
Aproveite a cenoura integralmente
Imagem: Unsplash
O aproveitamento criativo dos alimentos em sua totalidade é realidade em muitas cozinhas. Tome-se o exemplo da cenoura.
Enquanto a raiz da cenoura é para lá de versátil, podendo ser utilizada nas mais diferentes receitas - bolo, sopa, homus, suflê e snacks, por exemplo -, o talo e as folhas também têm vez na cozinha, como mostra a chef Paula Labaki:
Pesto de folhas de cenoura
(Rendimento: 1 porção)
Ingredientes:
300 ml azeite
200 g de castanha-do-brasil (castanha-do-pará)
50 g de queijo pecorino
1 maço de folhas de cenoura
É só bater tudo no processador, cuidando para deixar mais grosso. Pode ser usado para temperar massas, legumes, sopas ou mesmo acompanhar pães e torradas. Ainda é recheio de sanduíches.
Imagem: Unsplash
Bolinho de talo de cenoura
(Rendimento: 24 bolinhos)
Ingredientes:
3 ovos
1 ½ xícara (chá) de talos de cenoura (sem as folhas)
1 cebola média
½ xícara (chá) de queijo branco
1 xícara (chá) de farinha mandioca
½ xícara (chá) de leite
1 colher (chá) de curry
Sal a gosto
1 colher (café) de pimenta-do-reino
1 ½ xícara (chá) de farinha trigo
1 colher (sopa) de amido de milho (maisena)
1 colher (café) de bicarbonato de sódio
Em um processador ou liquidificador, bata os ovos, os talos, a cebola, o queijo, a farinha de mandioca e o leite até ficar homogêneo. Em uma tigela, junte o restante dos ingredientes e misture bem. Pode ser finalizado de duas maneiras. Uma delas é o bolinho frito: coloque óleo para aquecer e, com ajuda de uma colher, molde os bolinhos ao colocá-los na a. Ao fim, deixe escorrer sobre papel-toalha. Também pode ser assado. Neste caso, faça bolinhas e as amasse (como se fossem mini-hambúrgueres). Leve ao forno moderado em assadeira bem untada.
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.