PrimeNG Calendar error - JQuery is not defined
Asked Answered
A

2

6

I want to use PrimeNG calendar in my app. When I run the code, I get the error:

ReferenceError: jQuery is not defined.

Other PrimeNG directives work fine. If I remove <p-calendar> the error disappears.

I have imported and included Calendar in my app. By the way I'm using the latest versions of angular, router and forms. Before that I had this issue and fixed it by updating form providers.

 <p-calendar [(ngModel)]="date"></p-calendar> 

Stacktrace excerpt:

ReferenceError: jQuery is not defined at Calendar.ngAfterViewInit (eval at (http://localhost:8080/js/app.js:930:2), :44:90) at DebugAppView._View_AddShipmentComponent0.detectChangesInternal (AddShipmentComponent.template.js:930:59) at DebugAppView.AppView.detectChanges (eval at (http://localhost:8080/js/vendor.js:716:2), :243:14) at DebugAppView.detectChanges (eval at (http://localhost:8080/js/vendor.js:716:2), :348:44)

Amundsen answered 7/7, 2016 at 14:29 Comment(2)
If you don't have one, try including a reference to jQuery in your index.html.Audiovisual
<p-calendar> Dependencies are : jQuery UI Datepicker and DateTimePickerDenesedengue
S
10

You need to add the dependencies:

<!-- Datetimepicker, Slider, Schedule -->
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-ui-timepicker-addon/1.6.1/jquery-ui-timepicker-addon.min.js"></script>
Synecious answered 7/7, 2016 at 20:55 Comment(3)
this is so sad :(Passacaglia
Well, In the bright side the team is working to remove third party dependencies from calendar :)Synecious
Beta19 has a native calendar, not jquery based. blog.primefaces.org/?p=4149Tooth
R
4

You can also add just this:

<script src="node_modules/primeui/primeui-ng-all.min.js"></script>

Or, if you're using the angular-cli like me you can npm i primeui and add this to your angular-cli.json:

"scripts": ["../node_modules/primeui/primeui-ng-all.min.js"]

Update

in beta.19 The dependency of JQuery has been removed.

Reference: http://blog.primefaces.org/?p=4149

Rosemarierosemary answered 16/10, 2016 at 21:42 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.