Por favor, siga estes passos simples. Funcionou para mim. Vamos começar com um novo aplicativo angular 2 para evitar qualquer confusão. Estou usando o Angular cli. Portanto, instale-o se ainda não o tiver.
https://cli.angular.io/
Etapa 1: criar um aplicativo demo angular 2
ng new jquery-demo
Você pode usar qualquer nome. Agora verifique se está funcionando executando abaixo do cmd (agora, verifique se está apontando para 'jquery-demo' se não usar o comando cd)
ng serve
você verá "o aplicativo funciona!" no navegador.
Etapa 2: Instalar o Bower (um gerenciador de pacotes para a web)
Execute este comando no cli (certifique-se de que está apontando para 'jquery-demo' se não usar o comando cd):
npm i -g bower --save
Agora, após a instalação bem-sucedida do bower, crie um arquivo 'bower.json' usando o comando abaixo:
bower init
Ele solicitará entradas, basta pressionar enter para todos, se você quiser valores padrão e, no final, digite "Yes" quando perguntar "Parece bom?"
Agora você pode ver um novo arquivo (bower.json) na pasta "jquery-demo". Você pode encontrar mais informações em https://bower.io/
Etapa 3: Instalar o jquery
Execute este comando
bower install jquery --save
Ele criará uma nova pasta (bower_components) que conterá a pasta de instalação do jquery. Agora você tem o jquery instalado na pasta 'bower_components'.
Etapa 4: adicione o local do jquery no arquivo 'angular-cli.json'
Abra o arquivo 'angular-cli.json' (presente na pasta 'jquery-demo') e adicione o local da jquery em "scripts". Isso parecerá assim:
"scripts": ["../bower_components/jquery/dist/jquery.min.js"
]
Etapa 5: escreva código jquery simples para teste
Abra o arquivo 'app.component.html' e adicione uma linha de código simples. O arquivo terá a seguinte aparência:
<h1>
{{title}}
</h1>
<p>If you click on me, I will disappear.</p>
Agora abra o arquivo 'app.component.ts' e adicione a declaração e código da variável jquery para a tag 'p'. Você também deve usar o gancho de ciclo de vida ngAfterViewInit (). Após fazer as alterações, o arquivo ficará assim:
import { Component, AfterViewInit } from '@angular/core';
declare var $:any;
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app works!';
ngAfterViewInit(){
$(document).ready(function(){
$("p").click(function(){
$(this).hide();
});
});
}
}
Agora execute seu aplicativo angular 2 usando o comando 'ng serve' e teste-o. Deveria funcionar.