2014-12-13 77 views
2

我按照Loopback的入門文檔,當我想添加靜態文件時出現問題Strongloop getting started Step 3:文件/server/boot/root.js沒有存在,除了/server/server.js不具有2行是被認爲是有:Strongloop/Loopback入門指南缺少root.js

// var path = require('path'); 
// app.use(loopback.static(path.resolve(__dirname, '../client'))); 

相反,/server/middleware.json顯示:

"routes": { 
    "loopback#status": { 
     "paths": "/" 
    } 
    }, 

可能有人請讓我知道如何執行此步驟?注意:步驟3的git存儲庫很好,但不是運行slc loopback的腳手架項目。

+0

當我試圖生成使用SLC回送的應用,它的每一件事情。只需嘗試使用slc生成應用程序,而不使用github中檢查的示例代碼。它工作正常。 – 2014-12-13 18:23:07

回答

1

/server/middleware.json文件是現在註冊中間件的地方。以下摘錄解決了模塊的服務器/中間件目錄中的文件(loopback-getting-started/node_modules/loopback/server/middleware)。

"routes": { 
    "loopback#status": { 
     "paths": "/" 
    } 
    }, 

更改爲:

"routes": { 
    }, 

重新啓動環回服務器和本地主機訪問:3000個會導致一個Express錯誤404,這將是意料之中的,因爲你不再有/定義的路由。

您現在需要在middleware.json文件中指定如何提供靜態內容。您可以在「文件」階段做到這一點:

"files": { 
    "loopback#static": { 
    "params": "$!../client" 
    } 
} 

現在,您可以在/客戶端目錄中添加以下index.html文件作爲原始文檔狀態。

<head><title>LoopBack</title></head> 
<body> 
    <h1>LoopBack Rocks!</h1> 
    <p>Hello World... </p> 
</body> 

重新啓動環回服務器並訪問localhost:3000現在提供index.html頁面。

更多關於如何通過新的方式指定中間件細節位於http://docs.strongloop.com/display/public/LB/Defining+middleware#Definingmiddleware-Registeringmiddlewareinmiddleware.json

另見https://github.com/strongloop/loopback-faq-middleware

+0

感謝您的詳細解答。 – GuillaumeS 2015-03-17 22:13:21

0

最新版本的LoopBack刪除了root.js文件。您不再需要它了,需要更新文檔以反映這一點。

+0

非常感謝。繼續這個,你會有一個運行靜態中間件定義的例子嗎?我看了這裏:[Loopback doc](http://docs.strongloop.com/display/public/LB/Using+middleware+phases),這段代碼對我不起作用:'{ 「files」:{ 「loopback#static」:{ 「params」:「$!../ client」 } } }' – GuillaumeS 2014-12-15 12:49:00

+0

謝謝您的回答。 – GuillaumeS 2014-12-17 09:38:18