Forum Discussion

Mike Jansen's avatar
Mike Jansen
Iron Contributor
Jun 12, 2017

Sharepoint framework > reference to custom javascript

I try to convert an "old" content editor webpart to a SharePoint Modern webpart. My original script contains a few references to custom .js files. In my new solution I added this to my "webpart.ts" file:

    require('./script1');
    require('./script2');
    require('./script3');

Added all the files to the "webparts" directory. When I build I get errors "Module not found, ....."

Looks like this error fires when it sees code in script1 refering to a function in script2.

 

Am I doing something wrong in my references?

 

Thanks, Mike

6 Replies

  • Mike Jansen's avatar
    Mike Jansen
    Iron Contributor

    After a day of searching and testing, i found this:

    https://blog.mastykarz.nl/bundling-external-frameworks-sharepoint-framework-client-side-web-parts-bad-idea/

     

    Looks like my idea of bundling my javascripts file in the webpart is not the best approach. I know put them on my Sharepoint site (site assets) and referenced them in the "config.json" file. No more build errors so we are getting somewhere.

     

    However, suppose I want to distribute my webpart to different tenants, what might be the best place to put my .js files? Azure somewhere? Or is there a better solution?

      • Pieter Veenstra's avatar
        Pieter Veenstra
        MVP

        Is there a reason why your not just migrating your scripts to TypeScript?

         

        Something like this is easy to implement and closer to where you should want to be:

         

        export default class MyFunctionsTurnedIntoAClass {
        
            public oldfunction1() {
              ....
            }
        
            public oldfunction2() {
                ....
            }
        
            ....
        }

         

Resources