0

Visual studios has the following typescript code on their website that I was trying to follow as an example:

import RestClient = require("TFS/WorkItemTracking/RestClient");
 // Get an instance of the client
var client = RestClient.getClient();
// Call a method on the client
// e.g. client.getResource(...).then(...);

Part of the javascript code I have is:

VSS.init({
        explicitNotifyLoaded: true,
        usePlatformStyles: true
    });
  VSS.require([
      "VSS/Controls",
      "VSS/Controls/Menus",
      "VSS/Controls/Dialogs",
      "VSS/Service",
      "TFS/WorkItemTracking/RestClient",
      "VSS/WebApi/Contracts"],
      function (VSS_Service, TFS_Wit_WebApi) {
          //get the REST client
          var witClient = VSS_Service.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient);
      }
  );

However when I do this I get an error that says that VSS_Service.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient) is not a function. Do I need to initialize VSS_Service other than the VSS.require(["VSS/Service"]?

user3638890
  • 47
  • 10

2 Answers2

2

I made witClient and outside variable so I could use it anywhere in my program, and added Controls and Grids to the function which worked.

var witClient;
  VSS.init({
        explicitNotifyLoaded: true,
        usePlatformScripts: true, 
        usePlatformStyles: true
    });
  VSS.require([
      "VSS/Controls", "VSS/Controls/Grids",
      "VSS/Service", "TFS/WorkItemTracking/RestClient"],
      function (Controls, Grids, VSS_Service, TFS_Wit_WebApi) {
          //get the REST client
          witClient = VSS_Service;//.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient);
          witClient = witClient.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient);
      }
  );
user3638890
  • 47
  • 10
0

It seems your code is correct, just not use RestClient as a var, try to modify

var RestClient = VSS_Service.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient);

to

var witClient = VSS_Service.getCollectionClient(TFS_Wit_WebApi.WorkItemTrackingHttpClient);

Useful article: https://www.visualstudio.com/en-us/docs/integrate/extensions/get-started/node

Cece Dong - MSFT
  • 29,631
  • 1
  • 24
  • 39