2016-05-25 12 views
1

Kennt jemand oder hat eine JSDOC-Definition-Bibliothek, die ich für SS2.0 verwenden kann?Weiß jemand, wo man eine SS2.0 JSDOC-Definitionsbibliothek finden kann?

Die aktuelle habe ich für SS1.0 sieht aus wie die unten, und ich verwende es, um in meine IDE einstecken und Autovervollständigung bekommen.

/** * Loads an existing saved search. The saved search could have been created using the UI, or created using nlapiCreateSearch(type, filters, columns) in conjunction with nlobjSearch.saveSearch(title, scriptId). 
*<br>API Governance: 5 
* @param {String} recType [optional] - The record internal ID of the record type you are searching (for example, customer|lead|prospect|partner|vendor|contact). This parameter is case-insensitive. 
* @param {String} searchId - The internal ID or script ID of the saved search. The script ID of the saved search is required, regardless of whether you specify the search type. If you do not specify the search type, you must set type to null and then set the script/search ID. 
* @returns {nlobjSearch} nlobjSearch 
* @since 2012.1 */ 
function nlapiLoadSearch(recType, searchId) { }; 

Nicht wirklich eine technische Frage, aber würde für jeden praktisch sein.

+0

https://github.com/3EN-Cloud/autocomplete-netsuite ist nützlich, wenn Sie das Atom-Editor verwenden –

Antwort

5

Sie was betrachten kann ich tat, was nicht nötig ist, andere Plugins herunterzuladen.
Sie können den Code-Assistenten aktivieren, wenn Sie die Kopie der SS2.0-API haben und dann das JSDOC-Tag "@param" und "@type" verwenden.
Dann wird es Vorschlag, den Sie jedes Mal sein geben Sie ‚Strg‘ + ‚SPACE“.
Abgesehen davon, wird die IDE auch Beschreibung für jede Funktion zur Verfügung stellen.
Also das ist, was Sie tun.

Sample

  1. auf dem NetSuite accoun, die SuiteScript 2.0 JavaScript-Dateien herunterladen. Sie können dies tun, indem nagaviting bei> Dokumente> Dateien> SuiteScripts>. Dann im rechten Teil des Bildschirms, sollten Sie Links sehen für "SuiteScr IPT 2.0 API "und" SuiteSCript 1.0 API ". Klicken Sie zum Herunterladen auf SS2.0. enter image description here
  2. Erstellen Sie in der Eclipse-IDE ein neues JavaScript-Projekt für SS2.0, oder binden Sie es in Ihr vorhandenes Projekt ein.
  3. Klicken Sie mit der rechten Maustaste auf das Projekt, das Sie gerade bearbeiten, und wählen Sie "Eigenschaften". Fügen Sie unter> JavaScript> Pfad einbeziehen und dann auf der Unterregisterkarte "Projekte" das Projekt hinzu, in dem SS2.0-APIs enthalten sind.
  4. Sie verfügen nun über Codeunterstützung für Objektliteral-APIs von SS2.0. Dies sind die Module 'N/log' und 'N'util'.
  5. Weiter, um die Codeunterstützung für Objektkonstruktor-APIs von SS2 zu aktivieren.Wie bei den Modulen 'N/record' und 'N/search' sollten wir bei jeder Funktionsdeklaration das @ JSDoc-Tag "@param" hinzufügen.

    Wenn wir also die Module 'N/record', 'N/search' und 'N/error' in unserem Skript verwenden, sollten wir die folgenden Beispielkommentare vor der Funktionsdeklaration haben. Bitte beachten Sie jedoch, dass dieser Wert mit dem Wert innerhalb des Tags "{[VALUE HERE]}" und dem Modulnamen übereinstimmen sollte. Außerdem der Variablenname im Kommentarbereich und in der Funktionsdeklaration.

    /** 
    * Do something. 
    * 
    * @param {record} objRec 
    * @param {search} objSearch 
    * @param {error} objError 
    * 
    */ 
    function doSomething(objRec, objSearch, objError) 
    { 
         //CODE HERE 
    } 
    


    Sie auch '@type' für Ihre Variablendeklaration verwenden. Unten ist der Beispielcode.

    /** 
    * Do something. 
    * 
    */ 
    function doSomething() 
    { 
         /*** @type record**/ 
         var recCustomerRefund = record.create(
          { 
           type : 'customerrefund', 
           isDynamic : true 
          }); 
    } 
    

    enter image description here

+0

Dies ist genau das, was ich suchte. Vielen Dank!! – pipechang

0

Die Art, wie SS2 funktioniert, ist im Grunde kein Glück.

betrachten

define(['N/search'], function(bob){ 
    var srch = bob.load({id:'customsearch_my_search'}); 
} 

Was bob ist? Ihre IDE muss wesentlich intelligenter sein, um zu wissen, dass Bob Teil des Suchnamespace ist. Es ist natürlich machbar, aber weniger wahrscheinlich, mit einer einfachen herunterladbaren Datei zu arbeiten, die Sie einfach in Ihre IDE einstecken können. Wenn Sie nur "Suche" verwenden, die die Arbeit wahrscheinlicher macht, haben Sie jetzt einen sehr allgemeinen Namen verwendet, den Sie nicht anderswo verwenden können.

Auch wenn eine IDE bestimmen kann, was "bob" jetzt ist, sind Ihre Argumente ein ungeordneter Hash, so dass positionelle @params nicht mehr funktionieren.

Typoskript kann helfen. Ich habe eine Typescript-Definitionsdatei für SS1 unter https://github.com/BKnights/KotN-Netsuite verwaltet. Wenn ich mehr mit SS2.0 mache, kann ich das gleiche tun. Dann würde Ihre IDE eher eine Chance haben:

define(['N/search'], function(bob:NSearch){... 

Also Ihr Typoskript bewusst IDE, dass für die Mitglied Abschluss verwenden könnte und zumindest würden Sie einen Kompilierung Überprüfung Typen haben