2017-04-13 33 views
1

我遇到了我需要使用jQuery的情況,並且認爲angular 4可能包含jquery的相同版本,因爲angularJS擁有它的輕量版本。什麼版本的jquery angular 4擁有

如果angular 4在內部有一個jQuery,它具有什麼樣的jQuery。 jQuery Lite或完整版?

+4

Angular在內部不包含jquery。此外,不鼓勵使用包含直接DOM訪問的代碼(jquery做了很多),因爲它不是非常「友善」。 – echonax

+1

經常重複的StackOverflow非答案:_你爲什麼需要jQuery?_有一個非常好的機會角度會做你想做的事情,你只需要發現如何。告訴我們,也許我們可以提供解決方案。 – msanford

+0

我希望能夠以編程方式禁用組件,但我無法訪問該組件代碼(它嵌套在導入組件中,我們的應用程序標題具有許多功能)。我所能訪問的是它的類,我想使用某種基於類的選擇器來獲取指向該視圖組件的指針並將其禁用。我試圖禁用的組件包含一個下拉列表,這是我試圖禁用的真實事物。謝謝! – user2748659

回答

3

Angular(2/4)完全不包含jQuery。然而,angularjs擁有jQuery燈光。

4

Angular不包含jQuery;你必須手動包含它,通過,例如:

npm install jquery @types/jquery

這種意志,在寫這篇文章的時候,安裝3.2.1

然後確保node_modules/jquery/dist/jquery.min.js包含在您的構建中(有很多構建工作流程,所以我不會涉及這些示例)。

再經過您的import S和在其模板使用jQuery的組件您@Component裝飾前添加

declare const $: JQueryStatic; 

+0

JQueryStatic仍然不能在這裏工作,雖然這是工作:https://stackoverflow.com/questions/40994719/cannot-find-name-jquery-in-angular2 –

+0

@JuniorM這在我的構建。您在該鏈接中引用了哪些_answer_,以及它如何「仍然無法正常工作」?也許開一個新的問題? – msanford

+0

那個有超過30票的人。最新版本的Angular(2和4)沒有jQuery,對不對?所以對我來說,'npm install jquery --save','npm install @ types/jquery --save',然後'從'jquery''導入*爲$。但後來我發現建議避免在Angular中使用jquery並嘗試操作DOM,如https://angular.io/guide/user-input所示。那麼,我認爲我們也應該儘可能地避免DOM操作... –

相關問題