2015-06-21 101 views
0

直到最近,我總是用Gulp編譯/ uglify/minify我的Ember.js代碼,它的工作很好。 這是高達1.11灰燼需要最新版本的Ember-cli?

現在我想升級到1.12灰燼,發現灰燼,CLI是目前首選和推薦的方法安裝/升級Ember.js 這是否意味着它不建議再下載個人Ember圖書館,並通過大量自己編譯一切?

我使用燼-CLI主要關注的有以下幾種:

[1]這感覺就像我沒有足夠的控制在了發生了什麼。 例如我需要在我的前端有兩個html文件--1個公開訪問和1個保護 - 而且ember-cli似乎明確地查找了index.html文件。 我可以通過將其他HTML文件放在「公共」文件夾中解決它,但這種感覺更像是一種黑客而非最終解決方案。

[2] ember-cli 很多的時間來編譯我的應用程序。 隨着Ember 1.11和吞嚥,它只需要2或3秒,而使用Ember(使用Ember 1.12)時,它需要更多時間才能實現更簡單的應用程序。 (實際上它目前只包含應用程序,而與Ember 1.11和一飲而盡應用程序的登錄/註冊部分也包含應用程序邏輯)

$ time ember build 
version: 0.2.7 
0.2.7 

Could not find watchman, falling back to NodeWatcher for file system events. 
Visit http://www.ember-cli.com/#watchman for more info. 
Building.. 
services/websocket.js: line 39, col 31, 'SockJS' is not defined. 
services/websocket.js: line 298, col 13, 'observerFunction' is defined but never used. 

2 errors 

services/util.js: line 6, col 9, Bad line breaking before '+'. 
services/util.js: line 7, col 9, Bad line breaking before '+'. 
services/util.js: line 8, col 9, Bad line breaking before '+'. 
services/util.js: line 9, col 9, Bad line breaking before '+'. 

4 errors 

===== 2 JSHint Errors 

Built project successfully. Stored in "dist/". 

real 0m55.876s 
user 0m35.935s 
sys 0m2.643s 

正如你可以看到它需要近1分鐘,建立這個很簡單Ember代碼。

[3]隨着吞噬,我可以使用gulp-watch在飛行中更新我的實時應用程序。通過ember-cli類似的東西可以通過「ember serve」獲得, ,但是這期望應用程序可以獨立運行,這與我的應用程序不同。我必須從我的後端應用程序,這是用java編寫的服務。

回答

0

建議使用Ember CLI,但最新版本的不需要。即使是2.0版beta版,您仍然可以使用「全局風格」。所以,如果你意識到你失去了什麼,你仍然可以咕,一聲,但是我想說你不應該期望得到官方文檔/指南等的支持。現在大多數插件已經轉換成Ember CLI,所以它需要一些努力使其與全局樣式應用程序一起工作(之前在GitHub上有ember-cli-export-addon存儲庫,但現在已經不存在了),但是仍然可以使Ember CLI插件與全局工作配合使用。

現在,關於您的問題:

  1. 這可能是Engines RFC將解決你的問題。
  2. 1分鐘很長,也許你配置錯誤,或者即使沒有包含很多邏輯,你的應用程序確實非常大,或者你在Windows上遇到Ember CLI性能問題,這可以解決。
  3. 也許您可以將文件系統更改(例如通過ln -sdist/)綁定到您的後端應用程序目錄,或者爲了開發目的,將Ember應用程序與Java後端分開。
+0

感謝您的引擎鏈接,我沒有意識到這一點,這聽起來像是一個很好的解決方案,我的問題確實如此。 –

+0

(不能編輯以前的評論,因此一個新的) 1。感謝鏈接到引擎,我沒有意識到這一點,這聽起來像是一個很好的解決我的問題的確。 2.我知道Windows上的性能問題,但我在linux上運行,我的應用程序根本不大。 我真的不知道爲什麼它需要這麼長時間 3.我已經通過在我的java應用程序中提供了一個webroot位置,將我的Ember應用程序從我的java後端分離出來。 但是「ember serve」似乎並不像「ember build」那樣「構建」應用程序。因此,當通過「燼服務」「構建」時,該應用程序無法正常工作 –

+0

我想說的,也許以前沒有包含此內容 - Ember CLI並不是開發人員需求的完美答案。例如,與VS的集成很難,第一次構建的性能有時非常糟糕(並且在GitHub上打開了問題),將開發人員的體驗與其他應用程序/語言集成在一起,我認爲我們需要等待Ember團隊實現某些功能/解決方案由於Ember CLI正在積極開發中,因此存在缺陷。 –