2012-06-17 20 views
9

Cập nhật: Đối với bất cứ ai quan tâm đến việc sử dụng Brunch với AngularJS tôi đã đặt cùng một dự án hạt angular-brunch-seedBrunch làm thế nào để vô hiệu hóa RequireJS mô-đun gói

Tôi đang sử dụng Brunch với AngularJS. AngularJS cung cấp hệ thống mô-đun để nhu cầu nhập tệp bằng commonJS/AMD là thừa. Có thể tắt tính năng này cho các tệp trong thư mục /app không? Về cơ bản tôi muốn nó biên dịch các tập tin không thay đổi gì giống như trong thư mục /vendor.

Vì vậy, ưu tiên ra đi sẽ là:

joinTo: 
    'js/app.js': /^app/ 
    'js/vendor.js': /^vendor/ 

Với cả hai js/app.jsjs/vender.js chứa biên dịch tập tin từ mỗi thư mục tương ứng, nhưng không quấn.

Có ai có ý tưởng nào không?

CẬP NHẬT Cú pháp đã thay đổi từ khi @jcruz câu trả lời. Đây là cách để làm điều này ngay bây giờ.

Cuối cùng, tôi đã sử dụng phiên bản sửa đổi của câu trả lời @jcruz.

exports.config = 
    modules: 
    definition: false 
    wrapper: (path, data) -> 
     """ 
(function() { 
    'use strict'; 
    #{data} 
}).call(this);\n\n 
     """ 
    files: 
    javascripts: 
     defaultExtension: 'coffee' 
     joinTo: 
     'js/app.js': /^app/ 
     'js/vendor.js': /^vendor/ 

Theo mặc định trình bao bọc "thô" không bao gồm trình bao bọc chuẩn của coffeescript. Bằng cách đặt jsWrapper thành:

wrapper: (path, data) -> 
    """ 
(function() { 
    'use strict'; 
    #{data} 
}).call(this); 
    """ 

tệp sẽ được gói như mong đợi.

+0

hey nhờ để cập nhật câu hỏi này với cú pháp mới.Tôi vừa cập nhật bữa nửa buổi và cú pháp 'jsWrapper' cũ không hoạt động. – jcruz

Trả lời

4

Khả năng vô hiệu hóa các gói mô-đun được chỉ vừa mới được thêm vào trong https://github.com/brunch/brunch/commit/ec158cffd1b66d5db2093cf766000673aa0dd3a5

Tôi không tin rằng việc phát hành w/các tính năng này là trên NPM chưa nhưng bạn có thể chỉ cài đặt lại bưa ăn từ repo github

Một khi bạn làm điều đó Brunch, thiết jsWrapper để 'thô' trong config.coffee bạn

Something như thế này ...

exports.config = 
    jsWrapper: 'raw' 
    files: 
    javascripts: 
     defaultExtension: 'js' 
     joinTo: 
     'javascripts/app.js': /^app/ 
     'javascripts/vendor.js': /^vendor/ 

'brunch b' và mã gói sẽ biến mất

+0

Tôi đã kết thúc bằng cách chuyển một hàm để bọc các tệp trong trình bao bọc coffeescript chuẩn, nhưng khác thì nó hoạt động hoàn hảo. Cảm ơn bạn! –

2

Tính (gần như) 2017 Jan, nó là bắt buộc phải khai báo npm được kích hoạt thành false cùng với các thiết lập module. Phải mất một lúc tôi mới tìm ra được. (Tìm thấy thông qua một số GitHub issue). Hi vọng điêu nay co ich. Chúc mừng.

Đây là một tập tin cấu hình làm việc:

// See http://brunch.io for documentation. 
module.exports = { 
    files: { 
     javascripts: { 
     joinTo: { 
      '/js/app.js': /^app/, 
      '/js/vendor.js': /^(?!app)/ 
     } 
     }, 
     stylesheets: { 
     joinTo: 'css/app.css' 
     } 
    }, 

    paths: { 
     public: '/priv/static' 
    }, 

    npm: { 
     enabled: false 
    }, 

    modules: { 
     wrapper: false, 
     definition: false 
    } 
} 
Các vấn đề liên quan