2016-03-26 29 views
15

Tôi đang sử dụng Mã Visual Studio (VSC) 0.10.11 trên Windows và Mac. Với mục đích của câu hỏi này tôi có đoạn này nhỏ JavaScript:Visual Studio Code Intellisense không hoạt động trên Javascript

'use strict'; 

const os = require('os'); 
console.log(os.homedir()); 

Tôi đi theo John Papa trên Visual Studio Mã (Blog entryPluralsight Visual Studio Code JavaScript Intellisense - dành cho những người có tài khoản) và do đó tôi hy vọng rằng VSC cung cấp Intellisense và Tùy chọn sửa lỗi nhanh khi có sẵn các kiểu gõ.

Trong đoạn trên VSC nhận consolelog() (tôi sử dụng hút bụi, nhưng nó là như nhau với Intellisense):

console log

nhưng không oshomedir():

os homedir

Nhưng tất cả 4 kiểu có sẵn trong typings/main/ambient/node/index.d.ts. Tôi biết rằng sự khác biệt là require trong trường hợp của os, nhưng trong khóa học video của John Papa, VSC cũng cung cấp IntelliSense cho các mô-đun bắt buộc. Điểm khác biệt là John Papa đã sử dụng tsd trong khi tôi đang sử dụng typings.

Vì vậy, câu hỏi của tôi là

  • làm thế nào tôi có thể kích hoạt Intellisense cho tất cả typings biết?
  • Tôi phải làm gì mà VSC cung cấp cho tôi Bản sửa lỗi nhanh (dòng màu xanh lá cây dưới moduls có lỗi đánh máy)?

Trả lời

16

Các liên kết ở trên đã lỗi thời. Trong các phiên bản cũ hơn của Mã VS, bạn cần tham khảo các kiểu đánh máy của mình như /// <reference path> for somelibrary.d.ts.

Với phiên bản mới, bạn cần phải khởi tạo dự án của bạn bằng cách tạo ra jsconfig.json tại thư mục gốc của dự án của bạn và thêm dòng sau bên trong:

{ 
    "compilerOptions": { 
     "target": "es5", 
     "module": "commonjs" 
    }, 
    "exclude": [ 
     "node_modules" 
    ] 
} 

Tiếp theo cài đặt gõ bạn cần. Bạn có thể sử dụng tsd hoặc typings. Trong trường hợp của bạn, bạn cần cài đặt tsd install node hoặc typings install node --ambient. Đảm bảo bạn đã cài đặt typings/tsd. Khởi động lại dự án.

Vui lòng tham khảo tài liệu:

  1. Cài đặt dự án JS - https://code.visualstudio.com/docs/languages/javascript
  2. Node.js - https://code.visualstudio.com/docs/runtimes/nodejs
  3. Debugging - https://code.visualstudio.com/docs/editor/debugging

Cập nhật:

Kể từ phiên bản 1.7 có không cần cài đặt thủ công kiểu chữ, chúng sh sẽ được tải xuống tự động. Better JavaScript IntelliSense

+2

Với 'jsconfig đúng.json' IntelliSense đang hoạt động. Tuy nhiên, khi bạn đọc tài liệu ở liên kết đầu tiên, nó sẽ là hành vi mặc định, ngay cả khi không có 'jsconfig.json´: * Lưu ý: Nếu bạn không có jsconfig.json trong vùng làm việc của mình, VS Code sẽ mặc định loại trừ thư mục node_modules và thư mục được xác định bởi thuộc tính out. * + * IntelliSense được cung cấp tự động cho các mô-đun CommonJS và AMD bên trong các thư mục dự án của bạn * Vì vậy, tôi nghĩ rằng đó chỉ là lỗi mà nó không hoạt động nếu không có tệp cấu hình. Dù sao, bây giờ nó hoạt động. Cảm ơn câu trả lời của bạn! – ChrLipp

+4

https://code.visualstudio.com/updates/ Họ đã thay đổi hành vi này đối với jsconfig.json. > Nếu bạn không có jsconfig.json trong vùng làm việc của mình thì các giá trị mặc định sau được sử dụng: danh sách loại trừ bao gồm thư mục node_modules và thư mục được xác định bởi thuộc tính out. Lưu ý rằng nếu bạn không có jsconfig.json được định nghĩa để đánh dấu thư mục gốc của dự án của bạn, thì mỗi tệp JavaScript được coi là một hòn đảo của Salsa. Nếu không có tệp jsconfig.json, tệp cross-file và Typings IntelliSense sẽ không hoạt động. –

+2

Tôi nghĩ rằng đây là nhược điểm của việc sử dụng phần mềm beta, mọi thứ thay đổi nhanh chóng. –

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