I\'ve followed the instruction to install primeng by running npm install primeng --save
then importing what I need in the app.module.ts
file, for e
A lot has changed since the question was first asked (in 2017) wrt the way themes (free and commercial) are available with primeng
. This is updated answer for anyone facing a similar issue as above in 2020. (update valid for "primeng": "^10.0.0-rc.2"
and angular v~10.0.6
)
Essentially there are three ways of importing free primeng
themes in an angular 2+
application.
primeng
imports to angular.json
styles block "styles": [
"src/styles.scss",
"node_modules/primeicons/primeicons.css",
"node_modules/primeng/resources/themes/saga-blue/theme.css",
"node_modules/primeng/resources/primeng.min.css"
],
src/app/styles.scss
file@import url("../node_modules/primeicons/primeicons.css");
@import url("../node_modules/primeng/resources/themes/saga-orange/theme.css");
@import url("../node_modules/primeng/resources/primeng.min.css");
/node_modules
work, so the way to make that work is to copy the styles (from say /node_modules/primeng/resources/themes/saga-purple/theme.cs
s to an equivalent path in /assets
and use that path in the link) - the possible issue why /node_modules
links do not work is probably because angular compile process creates bundle files as part of the webpack workflow and does not affect the index.html in which the link is referenced to /node_module
<link rel="stylesheet" id="theme-link" type="text/css" href="assets/themes/saga-purple/theme.css">
Just upgraded to PrimeNG 6.1.6 and got this error.
Looks like with this release the themes have stopped using theme.css in favor of theme.scss. So, you will have to reference "node_modules/primeng/resources/themes/omega/theme.scss" (instead of "theme.css") in the "styles" section of angular.json AND …
You will need to npm rebuild node-sass.
According to the setup instructions you should use the following:
<link rel="stylesheet" type="text/css" href="/node_modules/primeng/resources/themes/omega/theme.css" />
<link rel="stylesheet" type="text/css" href="/node_modules/primeng/resources/primeng.min.css" />
<link rel="stylesheet" type="text/css" href="YOUR_PATH/font-awesome.min.css" />
notice that the path starts with:
href="/node_modules/primeng/resources/themes/omega/theme.css"
not:
href="../node_modules/primeng/resources/themes/omega/theme.css"
Hope this helps! :)
I found a tutorial that uses PrimeNg with Angular CLI that worked for me.
I added the font-awesome.min.css
stylesheet to index.html.
Then the theme I wanted (e.g. "../node_modules/primeng/resources/themes/omega/theme.css",
) to angular-cli.json file in the "styles" [...]
section.
I resolve my problem by remove rel="stylesheet" type="text/css"
from index.html and also added below imports to styles.css :
@import '~primeicons/primeicons.css';
@import '~primeng/resources/themes/nova-light/theme.css';
@import '~primeng/resources/primeng.min.css';
in the style.css
file , add your imports
for example :
@import '../node_modules/primeng/resources/themes/omega/theme.css'
just a bit note : be sure you have imported the primeNG modules in the correct place (In fact, we import modules not components, take care;)