2012-05-09 63 views
6

Vì vậy, ... như tôi đã đọc qua tài liệu hướng dẫn Sencha Command, nó cho tôi biết rằng việc xây dựng sẽ tự động (sử dụng Phantom JS) có thể cho tôi biết tất cả những gì phụ thuộc và theo thứ tự nào. Dựa trên đó, tôi hy vọng lệnh "sencha app build production" để nối tất cả các phụ thuộc của tôi vào một tệp js, bất kể tôi có đưa chúng vào tệp app.json theo cách thủ công hay không. Tuy nhiên, tôi không thấy điều này xảy ra.Sản xuất xây dựng ứng dụng sencha: không kết hợp js của tôi

Tôi có phải duy trì danh sách các tệp JS theo cách thủ công trong app.json không? Nếu vậy, thì đó là tốt. Tôi chỉ hiểu khác với tài liệu. Hãy giúp tôi.

chỉnh sửa -
Vì vậy, index.html của tôi rất nhỏ. Nó chỉ có một thẻ tập lệnh vào một tệp js tài nguyên bên ngoài và một thẻ tập lệnh cho 'sdk/microloader/development.js'. App.js của tôi không được tham chiếu trên index.html của tôi. Khi tôi kết nối vào thư mục ứng dụng của mình và chạy lệnh "sencha app build production", nó kết thúc mà không có lỗi. Tuy nhiên, nó chỉ tìm thấy 53 phụ thuộc, khi tôi biết rằng chúng tôi có hơn 500. Đây là kết quả trong thiết bị đầu cuối khi tôi chạy xây dựng:

[email protected] ~/source/ab/AreaBook/web/src/main/webapp/sencha2 $ sencha app build -e production 
[INFO] Deploying your application to /home/aaronfrost/source/ab/AreaBook/web/src/main/webapp/sencha2/build/production 
[INFO] Copied sdk/sencha-touch.js 
[INFO] Copied app.js 
[INFO] Copied resources/css/app.css 
[INFO] Copied resources/icons 
[INFO] Copied resources/loading 
[INFO] Resolving your application dependencies (file:////path/to/my/sencha2/index.html) 
[INFO] Found 53 dependencies. Concatenating all into '/dir/to/my/sencha2/build/production/app.js' 
[INFO] Processed sdk/sencha-touch.js 
[INFO] Minifying sdk/sencha-touch.js 
[INFO] Processed app.js 
[INFO] Minifying app.js 
[INFO] Minifying resources/css/app.css 
[INFO] Minified sdk/sencha-touch.js 
[INFO] Minified app.js 
[INFO] Minified resources/css/app.css 
[INFO] Generated app.json 
[INFO] Embedded microloader into index.html 
[INFO] Generating checksum for appCache item: index.html 
[INFO] Generated cache.manifest 

Vì vậy, sau đó tôi nhìn vào app.js mới của tôi đó là trong thư mục xây dựng/sản xuất của tôi, và nó đã ghép nối một loạt các phụ thuộc sencha với nhau, nhưng tệp duy nhất của tôi được concat'd và minified là app.js của tôi, là tệp js duy nhất được tham chiếu trong app.json của tôi. Đó là lý do tại sao tôi đã tự hỏi nếu tôi phải tự đặt nó trong app.json để có được nó để có được concat'd và minified. Không có phụ thuộc nào được liệt kê trong phần app.js của tôi yêu cầu được đưa vào ứng dụng được xây dựng.js.

Tóm lại, nó không mang lại cho tôi hành vi tương tự mà tôi mong đợi, để xây dựng app.js của tôi với tất cả các phụ thuộc của tôi. Mọi suy nghĩ sẽ tốt đẹp.

+0

Bạn đang nói về phụ thuộc ST2 (được khai báo sử dụng 'require') hay bạn đang nói về phụ thuộc bên ngoài? Từ những gì tôi hiểu, chỉ có các tệp js từ kiến ​​trúc MVC của bạn và các phụ thuộc được tuyên bố rõ ràng bằng cách sử dụng 'require' sẽ được tích hợp vào app.js. được xây dựng của bạn Nếu bạn muốn bao gồm các tập lệnh js bên ngoài (không liên quan đến ST2), thì tôi nghĩ bạn phải đề cập đến chúng trong app.json. Dù sao, nó là một điều tốt để trộn các kịch bản ST2 với những người bên ngoài? Có phải những thư viện này không? – borck

+0

Tôi đang nói về phụ thuộc ST2. Tất cả chúng đều nằm trong phần yêu cầu trong một tệp lớp. – frosty

+0

Điều đó thật kỳ lạ ... Số lượng phụ thuộc mà bạn đề cập thực sự là khá thấp. Bạn có thể xác định phụ thuộc nào bị thiếu không? Trong trường hợp của tôi, lệnh sencha luôn bao gồm mọi thứ mà không cần sửa đổi bất cứ thứ gì trong app.json ... Bạn đã tạo ứng dụng của mình bằng lệnh sencha chưa? – borck

Trả lời

1

Từ kinh nghiệm của tôi, tôi không bao giờ phải sửa đổi app.json. Tất cả mọi thứ được đề cập trong câu lệnh 'Ext.requires' sẽ tự động được ghép nối trong tệp js cuối cùng (duy nhất) bằng lệnh sencha.

Nếu bạn vẫn gặp sự cố, có thể bạn nên cung cấp thêm một số chi tiết về các tệp không được xử lý chính xác.

+0

Tôi đã thêm bản chỉnh sửa. Làm ơn hãy kiểm tra nó. – frosty

Các vấn đề liên quan