jQuery foi o framework JavaScript mais utilizado já criado. Tirou o desenvolvimento web da Idade das Trevas e trouxe um pouco de alegria aos desenvolvedores web (nada de lidar com agentes de navegadores e código condicional). No entanto, o jQuery não é mais necessário em aplicações JS modernas. À medida que o JS e o CSS evoluíram, e o mundo se afastou do Internet Explorer (aleluia!), o jQuery se tornou obsoleto e antiquado. A OpenJS Foundation atualizou os projetos jQuery UI e jQuery Mobile para "Emeritus", o que significa que atingiram seu ciclo de vida e foram aposentados.
Piada sobre jQuery
De alguma forma, o UI5 é o único framework JS moderno ativo que ainda usa jQuery. Ninguém gosta mais disso. Ele infla o framework UI5 e não traz mais um valor real. Agora, com o lançamento da última versão de manutenção de longo prazo do UI5 v120, parece que estamos entrando em uma nova era!
Se o seu hobby é ler CHANGELOGs, você pode ter notado que muitas APIs foram descontinuadas e muito código jQuery foi substituído por JS nativo. Não tenho ideia de quando a SAP se livrará do jQuery de verdade, mas acredito que não vai demorar muito (em termos da SAP, poderia ser uma década ou algo assim?). Já passou da hora de se livrar dele!
Dito isso, acredito que nós, como comunidade, podemos ajudar com isso. Tenho contribuído com o UI5 por muito tempo e adoro substituir coisas do jQuery por JS nativo! Criei um novo branch git com algumas regras de ESLint, eslint-plugin-no-jquery, para encontrar jQuery no código-base do UI5. Isso facilita muito encontrar e substituir jQuery.
Clone o meu fork de
fork
, e mude para o branch
no-jquery
. Em seguida, instale as dependências e execute o ESLint com as regras no-jquery!
git clone https://github.com/mauriciolauffer/openui5.git
git checkout no-jquery
npm ci
npm run lint:jquery
Se quiser focar em um problema específico, remova todas as regras que não deseja do arquivo
.eslintrc-nojquery.json
e deixe apenas a regra com a qual deseja trabalhar.
{
"root": true,
"env": {
"browser": true,
"es2022": true,
"jquery": false
},
"globals": {
"sap": true,
"jQuery": false
},
"plugins": [
"no-jquery"
],
"extends": ["plugin:no-jquery/all"],
"rules": {
"no-jquery/no-closest": "error"
}
}
Resultados de no-jquery
Junte-se a mim nesta tarefa hercúlea ?
Você pode aprender um ou dois truques durante a busca, e estou certo de que entenderá ainda mais o UI5. Talvez a SAP sinta pena de nós e acelere o processo, então finalmente teremos um código UI5 bonito e limpo.
Siga alguns links que o ajudarão a substituir o jQuery por alternativas de JS nativo: