2017-06-15 44 views
0

我已經使用HTML/CSS和Node JS開發了Web應用程序。下一個任務是使用Phonegap將此應用程序轉換爲移動應用程序。即使我的應用程序在Web上運行得非常好,轉換後節點服務器在移動應用程序中也不起作用。我想這是因爲兩個原因:使用PhoneGap將節點JS Web應用程序轉換爲移動應用程序

  1. server.js和app.js文件位於根文件夾中,而不在www> js文件夾下。正因爲如此,phonegap無法轉換這些文件並在移動應用程序中使用它。
  2. 我需要使用「npm start」命令從命令提示符啓動Web應用程序。我無法以類似的方式運行移動應用程序。

我沒有NodeJS或移動應用程序開發經驗。請提供一些解決方案或鏈接,我可以按照完成任務。通過@Nisar提供

UPDATE

解決方案可能會在我的情況下工作。但我需要訪問其他js文件中寫入的方法,而不是app.js的方法。請提供一種實現相同的方法。

+0

您是否使用Node JS創建了API並使用Ajax調用這些服務? – Nisar

+0

不,我不使用Ajax @Nisar – Dash

回答

0

您無法直接將其轉換爲應用程序。

首先你必須分開UI(前端)和服務(後端)。在前端你必須通過AJAX API請求,服務器將以JSON響應。

要創建節點JS的服務,使用下面的例子爲GET和POST:

var express = require('express'); 
var app = express(); 
var bodyParser = require('body-parser'); 
var http = require('http').Server(app); 

app.use(bodyParser({limit: '50mb'})); 


http.listen(1337, function(){ 
    console.log('listening on *:1337'); 
}); 

app.get('/call', function(req, res){ 
    var end = "{\"result\": \"success\"}"; 
    res.end(end); 
}); 

app.post('/getUserData', function(req, res){ 
    response = { 
     first_name:req.body.first_name, 
     last_name:req.body.last_name 
    }; 
    res.end(JSON.stringify(response)); 
}); 

而且使用Ajax和下面的網址使用相同的應用程序中的:

得到:http://localhost:1337/call 帖子: http://localhost:1337/getUserData

+0

非常感謝回覆。我明白你的建議。但我需要從其他js文件訪問方法,而不是app.js的方法。如何調用abc.js文件的方法? – Dash

相關問題