0

Hallo, ich baue Video-Streaming-App über Telerik-Plattform. Meine app Struktur wie folgt aussieht:Telerik-Plattform Verwalten von npm-Paketen

my-Projekt App - package.json - app.js node_modules package.json server.js

Ich habe Feuerbasis und bitmovin Player Plugin meiner node_modules hinzugefügt . Die Dokumentation der Telerik-Plattform besagt nun: Hinzufügen von Referenzen auf die Datei package.json. Manage the nom plugins

Ich bekomme nicht, welche package.json Datei geöffnet werden muss. Es gibt zwei Dateien. Die erste in der Projektwurzel, die wie folgt aussieht: { "dependencies": { "tns-core-modules": "2.5.1", "bitmovin-player": "7.2.0-rc6", "firebase": "4.1.2" }, "devDependencies": { "nativescript-dev-android-snapshot": "0.0.6", "@types/firebase": "2.4.31" } }

Die andere package.json Datei im Ordner app ist wie folgt aussieht: { "name": "tns-template-blank", "main": "app.js", "version": "2.5.0", "author": "Telerik <[email protected]>", "description": "Nativescript blank project template", "license": "Apache-2.0", "keywords": [ "telerik", "mobile", "nativescript", "{N}", "tns", "appbuilder", "template" ], "repository": { "url": "https://github.com/NativeScript/NativeScript/commit/30aca890749e9e3fb9bd0f5ddc9de5b6995859bc" } }

und die app.js Datei wie folgt aussieht: var application = require('application'), mainModule = 'navigation/navigation'; application.start({ moduleName: mainModule });

ich nicht bekommen, in denen muss package.json Datei konfiguriert werden und wo der Verweis auf der Eingabe erfordert für das Modul (wie bitmovin Spieler & Feuerbasis), wie in der telerik Plattform Dokumentation erwähnt, die nicht in der obigen Abbildung Schritt gezeigt. 8.

bitte führen.

+1

in der ersten 'Paket.json' Sie müssen –

+0

konfigurieren Ich habe herausgefunden, dass ich eingeben muss: 'var myModule = require (" custom-module/index ")'; Wo die 'var' hinzufügen? , in den 'Abhängigkeiten' direkt unterhalb des individuellen Plugin-Namens ODER in den' dev-Abhängigkeiten' ODER zuletzt, nachdem der Code endet? – Swap

Antwort

0

Die erste package.json (d.h. root package.json) ist, wo irgendwelche Plugins gehen. Wenn die CLI verwenden, können Sie tns plugin add nativescript-dom tun und es würde dann das Paket ändern für Sie sein:

{ 
    "dependencies": { 
    "tns-core-modules": "2.5.1", 
    "bitmovin-player": "7.2.0-rc6", 
    "firebase": "4.1.2", 
    "nativescript-dom": "2.0.0" 
    }, 
    "devDependencies": { 
    "nativescript-dev-android-snapshot": "0.0.6", 
    "@types/firebase": "2.4.31" 
    } 
} 

Der dependencies Abschnitt ist, was geändert werden muss; Es benötigt den Namen des Plugins und die Version, die Sie verwenden werden. Es ist, dass Ihre package.json-Datei bereits für das, was Sie installierten, korrekt ist. Sie können auch http://plugins.nativescript.rocks für eine Liste von Plugins und deren aktuellen Versionen verwenden.

ein paar Noten; basierend darauf, dass du Bitmovin-Player und Firebase benötigst, aber NativeScript verwendest; Das wird nicht funktionieren. Der Firebase und der Bitmovin-Player, auf den du dich bezogen hast, sind keine NativeScript-Plugins, also werden sie nicht funktionieren. Bitmovin hat meines Wissens keine NativeScript-Version (aber mein NativeScript-ExoPlayer-Plugin könnte ein guter Ersatz sein) und dann glaube ich, dass das NativeScript-Firebase das gewünschte Plugin für die Firebase-Unterstützung in NativeScript ist.

Ich sehe auch, dass Sie mit tns-Core-Module 2.5.x sind; Das bedeutet, dass Sie Plugins erhalten möchten, die 2.x kompatibel sind. Die 3.x-Plugins funktionieren NICHT mit TNS 2.x (und eine große Anzahl von 2.x-Plugins wird in 3.x nicht funktionieren).

Wenn ein Plugin (zum Beispiel mit meinem nativescript-dom) Sie var dom = require('nativescript-dom'); tun (oder Sie können const dom = ... verwenden als NativeScript können ES6 grammer). Sie müssen nicht auf die tatsächliche js-Datei im Plugin verweisen. Wenn das Plugin korrekt erstellt wurde; Es wird automatisch die richtige js-Datei im Plugin verwenden.

schließlich in NativeScript sind die DevDependancies für alles, was nicht in die Anwendung gestellt wird. In diesem Fall führt das Android-Snapshot-Plugin während der Erstellungsphase der Anwendung einen Buildcode aus.