Forum Discussion
Unable to use MomentJS when creating a custom visual
I am building a custom-visul for Power BI. When I have added momentjs, my script sort of "hangs" as soon as I try to use it in my visual.ts. I dont get an error message or exepction or anything else. Using the lines below
console.log('Trying moment.js');
console.log(moment);
console.log('Moment-testing success');
it "stops" after outputting Trying moment.js. I have no trouble running pbiviz start.
These are the steps i have taken to install momentjs:
- Ran npm install momentjs --save
- Added "node_modules/moment/moment.d.ts" under files in my tsconfig.json. From my understanding, the moment.d.ts is sort of a "header"-file which only is used for autocompelte/InteliJ in my IDE, i.e. it does only include the declaration of functions, not the definition. As soon as I add this line my IDE stops complaining about not finding moment.
- Added "node_modules/moment/moment.js" to my pbiviz.json under externalJS (link)
- Added "moment": "^2.19.1", under dependencies in the package.json.
Is there something I have missed? It feels like my application cant find the actual moment.js and resolve what moment is...
1 Reply
- ChrisWilliamsAdvocate II
Hi, you may have seen this thread where I posted about using moment.js in custom visuals. It may give you a starting point.
To me, the issue was not so much about anything Power BI related, but instead was related to the moment namespace issues and integration with Typescript. I could never call console.log(moment) because moment was not recognized.
In the end, I didn't end up needing moment so I didn't work through to a final solution.
good luck!