0

嗨,我正在通過telerik平臺構建視頻流應用程序。我的應用程序的結構是這樣的:Telerik平臺管理npm包

我的項目 應用 - 的package.json - app.js node_modules 的package.json server.js

我增加了火力和bitmovin播放器插件,以我的node_modules 。現在Telerik平臺文檔說:添加對package.json文件的需求引用。 Manage the nom plugins

我不明白需要打開哪個package.json文件。有兩個文件。在項目的根,它看起來像第一個: { "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" } }

其他的package.json文件在app文件夾的樣子: { "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" } }

和app.js文件看起來像: var application = require('application'), mainModule = 'navigation/navigation'; application.start({ moduleName: mainModule });

我不明白在哪個package.json文件需要配置,以及如何在模塊的輸入需求參考(如bitmovin播放器& firebase),如上圖中步驟編號所示的telerik平臺文檔中提到的。 8.

請指導。

+1

。json'你必須配置 –

+0

我發現我必須輸入:'var myModule = require(「custom-module/index」)';在哪裏添加'var'? ,在'dependencies'中,在'dev dependencies'中的單個插件名稱OR下方,還是在代碼結束後最後? – Swap

回答

0

第一個package.json(即root package.json)是任何插件所在的地方。如果使用CLI,你可以做tns plugin add nativescript-dom,然後它會修改包你是:

{ 
    "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" 
    } 
} 

dependencies部分是需要改變的東西;它需要插件名稱和您將要使用的版本。它表明你的package.json文件已經正確安裝了你的東西。您還可以使用http://plugins.nativescript.rocks獲取插件及其當前版本的列表。

一對夫婦的筆記;根據你說你需要bitmovin-player和firebase,但使用NativeScript;這是行不通的。您引用的firebase和bitmovin播放器不是NativeScript插件,因此它們不起作用。據我所知,bitmovin沒有NativeScript版本(但我的NativeScript-ExoPlayer插件可能是一個很好的替代品),然後我相信NativeScript-Firebase是您希望在NativeScript中支持Firebase的插件。

我也看到你正在使用tns-core-modules 2.5.x;這意味着你想獲得兼容2.x的插件; 3.x插件將不適用於TNS 2.x(並且大量2.x插件在3.x中不起作用)。

當使用插件(例如使用我的nativescript-dom)時,您執行var dom = require('nativescript-dom');(或者您可以使用const dom = ...,因爲NativeScript可以使用ES6語法)。您不必指向插件內的實際js文件。如果插件構建正確;它會自動在插件中使用正確的js文件。

最後,在NativeScript中,DevDependancies適用於任何未放入應用程序的內容。在這種情況下,android-snapshot插件在應用程序的構建階段運行一些構建代碼。第一個`包中的