Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PrimeNG Calendar error - JQuery is not defined

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)

like image 836
norweny Avatar asked Jul 07 '16 14:07

norweny


2 Answers

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>
like image 94
Sergio Avatar answered Nov 17 '22 08:11

Sergio


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

like image 35
mrgoos Avatar answered Nov 17 '22 07:11

mrgoos