2015-10-05 63 views
2

背景如何獲得快遞航線angularjs文件工作

我試圖用angularjs文件上傳使用,並試圖將其與文件中保存的NodeJS。這整個設置我試圖在我的本地服務器中完成。

我的索引文件角JS部分位於/

我試圖用快遞在根目錄server.js文件來啓動服務器叫做門戶的文件夾裏面standards.html,下面是重定向我我正在努力去做。

Server.js

app.get('/', function(req, res) { 
    res.sendFile('portal/standards.html' , { root : __dirname}); 
}); 

問題

當我這樣做,當我使用上述重定向從一個活服務器不正常工作,工作正常的standards.html快遞服務器。

我是nodejs服務器端的新手。下面 是我的錯誤,我的CSS和JS文件的路徑被打破了某些原因(儘管它工作正常,當我直接加載它)

error screen

我的HTML

<link href="../libraries/common/bootstrap.css" rel="stylesheet"> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> 
    <link rel="stylesheet" href="../libraries/common/normalize.css" /> 
    <link rel="stylesheet" href="../libraries/floating-label/floating-label.css" /> 
    <link rel="stylesheet" href="../libraries/top-menu/yamm.css"> 
    <link href="momtest/portal/css/portal.css" rel="stylesheet"> 
    <link href="css/template-wizard.css" rel="stylesheet"> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/8.3/styles/github.min.css"> 

folder structure

回答

2

你可以直接在你的靜態文件目錄中輸入:

app.use(express.static('./portal/')); 
// Optional any deep link calls should return index.html 
app.use('/*', express.static('index.html')); 

您應該只將靜態資產放置在您想要爲這些資產提供服務的目錄中 - 不要包含您當前包含的php文件,以便在邏輯上將目錄結構分開。

從邏輯上劃分它意味着你有一個靜態文件(即在瀏覽器中運行的代碼)和服務器文件的目錄(以及你需要的任何子目錄)。一個常見的應用結構爲(文件名僅是例子):

對myApp
    --src
        --client
            --app
                --angul AR-模塊1
                --angular-模塊2
                --etc ...
        --server
             個  app.js
               等...

這僅僅是一個例子。關於如何構建可以研究的快速和角度應用程序,然後決定哪種方法最適合您的項目存在分歧意見。

+1

靜態文件的含義是什麼?這是否意味着我不能將我的angularjs文件由某些控制器供電?感謝您的時間和精力,我很抱歉無法理解「邏輯上劃分您的目錄結構」這句話。 –

+2

靜態文件是那些僅在瀏覽器中運行的 – br3w5

+0

哦,好吧,我現在得到它,唯一的PHP文件是home.php,因爲我在那裏使用電子郵件模塊而被命名爲home.php。由於我在一段時間內開發了這個功能,並且功能不斷變化,現在它變得非常混亂。非常感謝.. –