2017-02-15 26 views
7

Tôi đang chạy Webpack, Babel và Vue.js và tôi muốn chia nhỏ tệp nhập của mình. Hiện tại tôi có một tệp app.js, đây là điểm khởi đầu cho ứng dụng của tôi.Nhập khẩu Javascript ES6 không có tên

Tôi có một số bit và đoạn mã tôi muốn đưa vào tệp bootstrap.js mà tôi muốn đưa vào tệp app.js chính của mình. Tôi có thể có tệp sạch để bắt đầu bằng Vue và thêm thành phần trong đó khi tôi đi .

Một số ví dụ về những gì tôi muốn đưa vào bootstrap.js tập tin của tôi:

import messagesNL from './translations/nl'; 

Vue.use(VeeValidate, { 
    locale: 'nl', 
    dictionary: { 
    nl: { 
     messages: messagesNL 
    } 
    } 
}); 

window.Vue = Vue; 

Vì vậy, khá nhiều thiết lập cho các plugins, cấu hình toàn cầu, vv Tôi có cảm giác như đây không phải là mô-đun điển hình của bạn và tôi thấy nó cứng để tạo ra một mô-đun như cấu trúc cho tập tin này vì vậy tôi về cơ bản sử dụng này trong app.js tập tin của tôi:

import bootstrap from './bootstrap'; 

không có ý tưởng nếu điều này sẽ làm việc, nó dường như chỉ nhập khẩu tất cả mọi thứ gọn gàng mà không có tôi đã thực hiện một li module exports {} ke syntax.

Bây giờ biến khởi động mà tôi đã gán cho tệp đó không được sử dụng trong app.js vì nó chỉ được sử dụng để yêu cầu tệp và loại IDE của tôi 'greys` nó ra để cho tôi biết nó không được sử dụng.

Có cú pháp nào khác để tôi không phải gán tên cho nó không? Cách tiếp cận này có ổn không khi chia nhỏ tệp của tôi hay tôi nên làm gì khác?

Tôi chưa đặt nó vào một mô-đun thích hợp bởi vì sau đó nó sẽ có phạm vi địa phương riêng của nó và tôi sẽ không chắc chắn làm thế nào để thiết lập Vue với tất cả các plugin, vv Nếu ai có một đề nghị tốt hơn tôi mở cho nó.

Chúc mừng.

Trả lời

13

Để bao gồm một tập tin mà không cần nhập bất cứ điều gì bạn có thể chỉ cần thả <name> from một phần của tuyên bố:

import './bootstrap'; 

này sẽ thực hiện các mô-đun mục tiêu mà không ảnh hưởng đến phạm vi của mô-đun hoạt động, tức là loại nhập khẩu có không có tác dụng phụ.

+0

Điều này tương đương với 'require ('bootstrap');'? – Anonymous

+1

@Anonymous Có, nó tương đương với một câu lệnh yêu cầu độc lập (một trong đó kết quả của cuộc gọi đến yêu cầu không được gán cho bất kỳ thứ gì). Tuy nhiên, đường dẫn trong ví dụ của bạn không chính xác theo câu hỏi. Nó phải là 'require ('./ bootstrap')'. – sdgluck

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