2013-11-03 43 views
3

我有一個Sails.JS應用程序和Angular.JS前端。 角度文件存儲在/ assets/linker中,它們在啓動時被正確注入。我的問題是,當我從資產更改css或js文件時,更改不會顯示在服務器上,所加載的js文件與服務器啓動時相同。我試圖清除我的瀏覽器緩存,並嘗試在另一個瀏覽器中,但仍然是相同的。 我也嘗試使用forever -wnodemon運行應用程序,但仍然沒有任何結果。應用程序處於開發模式,無論如何,從sails lift --dev開始並不能解決問題。Sails.js應用程序在啓動後不從資產中刷新文件

我覺得我錯過了配置中的某些東西。有沒有辦法強制重新加載資產?

回答

9

你需要檢查你的Gruntfile配置。這是在鏈接器和livereload方面發生的地方。

具體而言,您需要查看watch任務和相關的tasks。 默認情況下,它看起來像這樣:

watch: { 
    api: { 

    // API files to watch: 
    files: ['api/**/*'] 
    }, 
    assets: { 

    // Assets to watch: 
    files: ['assets/**/*'], 

    // When assets are changed: 
    tasks: ['compileAssets', 'linkAssets'] 
    } 
} 
+2

您的回答幫助我瞭解問題的根源以及文件重新加載的方式。 +50會送給你。 – Georgi

1

我發現這個問題。我做了一個帶有angular generator 的Angular.js結構,它不僅增加了js結構,還增加了包含shell和bat腳本的業力測試環境,karma框架等等。

在監視文件夾中建立所有這些文件的sails應用程序正在破壞刷新功能。控制檯中沒有錯誤,正在運行的應用程序中沒有任何錯誤,但資產中的文件不再被重新載入。

每日提示:小心使用資產中的文件並查看生成器生成的內容!

+0

我完全同意,我們用Yeoman Sails發電機開始了一個項目。它最終成爲一個非常糟糕的主意:_:sails版本已過時,並且沒有簡單的方法來更新,因爲如果嘗試的話,它生成的文件可能會中斷。從一個簡單的'航行新的'開始幫助獲得一個乾淨的起點。我很高興我的答案幫助你,即使它沒有死。 –

+0

我在使用Bower管理我的依賴關係時遇到了同樣的問題。看起來這可能是Sails在資產目錄中管理大量文件時遇到的問題。但很難說,但沒有收到錯誤信息。 –

+0

那麼,你會如何安全地從資產文件夾中獲取文件以減少文件的數量? – svassr

相關問題