Phím tắt trong Visual Studio Code cho console.log là gì


Câu trả lời:


170

Cập nhật tháng 2 năm 2019:

Theo đề xuất của Adrian Smith và những người khác: Nếu bạn muốn liên kết phím tắt để tạo câu lệnh nhật ký bảng điều khiển, bạn có thể làm như sau:

  1. Tệp> Tùy chọn> Phím tắt
  2. Bên dưới thanh tìm kiếm, bạn sẽ thấy thông báo "Đối với các tùy chỉnh nâng cao, hãy mở và chỉnh sửa keybindings.json" , hãy nhấp vào nó
  3. Thêm cái này vào cài đặt JSON:
{
  "key": "ctrl+shift+l",
  "command": "editor.action.insertSnippet",
  "when": "editorTextFocus",
  "args": {
    "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
  }
}

Nhấn CTRL+ SHIFT+ Lsẽ xuất ra đoạn mã bảng điều khiển. Ngoài ra, nếu bạn đã chọn văn bản, nó sẽ được đưa vào bên trong câu lệnh nhật ký.


Nếu bạn muốn intellisene / autocomplete:

Đi tới Preferences -> User Snippets -> Chọn Typescript (hoặc bất kỳ ngôn ngữ nào bạn muốn). Một jsontệp sẽ mở. Bạn có thể thêm các đoạn mã vào đó.

Đã có một đoạn trích cho console.lognhận xét:

"Print to console": {
    "prefix": "log",
    "body": [
        "console.log('$1');",
        "$2"
    ],
    "description": "Log output to console"
}

Bạn phải làm điều này cho mọi ngôn ngữ mà bạn muốn sử dụng đoạn mã ... hơi phiền.


Ngoài ra, bạn nên đặt "editor.snippetSuggestions": "top"để các đoạn mã của bạn xuất hiện phía trên intellisense. Cảm ơn @Chris!

Bạn có thể tìm thấy các đề xuất đoạn trích trong Tùy chọn -> Trình chỉnh sửa Văn bản -> Đề xuất


2
Điều này đã từng hoạt động, nhưng nó không còn nữa, kể từ bản cập nhật cuối cùng có thể? Chỉ tôi thôi à? s17.postimg.org/5mxnx4umn/2017_02_14_11h10_03.jpg
Cristian Muscalu

Tiền tố được xác định ở trên là "log" vì vậy gõ "c" sẽ không hữu ích;) Hãy bắt đầu nhập "l" để thay thế.
Sebastian Sebald

Ồ, tôi quên đề cập rằng tôi đã thay đổi nó thành "c". Tôi đã không thay đổi bất cứ điều gì và sau khi cập nhật, nó không hoạt động nữa. Không có đoạn mã nữa, nhưng điều này "prefix": "c",sẽ làm cho nó hoạt động với "c" phải không?
Cristian Muscalu,

Nếu mọi thứ khác là chính xác. Đúng. Lưu ý rằng bạn cũng yêu cầu thêm đoạn mã vào từng ngôn ngữ bạn muốn sử dụng. Vì vậy, nếu bạn đã thêm nó vào TS, nó sẽ không hoạt động trong JS, ngược lại.
Sebastian Sebald

1
Ngoài ra, bạn có thể nhấp vào {}nút bên cạnh thanh tìm kiếm để mở keybindings.jsontệp - Cách dễ nhất là tôi không thể nhìn thấy thông báo "Đối với các tùy chỉnh nâng cao, hãy mở và chỉnh sửa keybindings.json" !
Aashish Chaubey

53

Tất cả các câu trả lời trên hoạt động tốt, nhưng nếu bạn không muốn thay đổi cấu hình của mã visual studio, chứ không phải muốn tự động hoàn thành cho console.log(object); bạn chỉ có thể sử dụng phím tắt CLG và nhấn Ctrl+ Spacegợi ý và nhấn Enter
Lưu ý : Tính năng này sẵn khi bạn cài đặt tiện ích mở rộng đoạn mã JavaScript (ES6).

Tương tự, bạn có tự động hoàn thành cho:

  • clg choconsole.log(object);
  • clo choconsole.log('object :', object);
  • ccl choconsole.clear(object);
  • chứng nhận choconsole.error(object);
  • ctr cho console.trace(object);
  • clt choconsole.table(object);
  • cin choconsole.info(object);
  • cco for console.count(label);

    (Danh sách này tiếp tục ...)

liên kết cho các đoạn mã JavaScript (ES6): https://marketplace.visualstudio.com/items?itemName=xabikos.JavaScriptSnippets

nhập mô tả hình ảnh ở đây


5
Hoàn hảo. +1. Đây là những gì tôi đang tìm kiếm - không phải thực hiện bất kỳ thay đổi cấu hình nào.
Chris 22

39

Câu trả lời hàng đầu của @Sebastian Sebald là hoàn toàn ổn, nhưng gặp phải một vấn đề tương tự (không đặc biệt là console.log, mà đúng hơn là nó "thiếu"), tôi cũng muốn đóng góp một câu trả lời.

Tiền tố của bạn thực sự đang hoạt động - theo mặc định của nó logvà trong trường hợp của bạn, bạn đã thay đổi nó thành c. Khi bạn gõ log(hoặc c) VSCode sẽ tạo ra một danh sách đầy đủ "tất cả những thứ ™" dựa trên nhiều yếu tố (tức là tôi không biết những yếu tố nào, có lẽ là mức độ liên quan của lớp).

Những thứ như đoạn trích có xu hướng hút về phía dưới. Để đưa chúng lên đầu, bất chấp độ dài của chúng, hãy thêm cái này vào cài đặt của bạn:

"editor.snippetSuggestions": "top"

3
Bạn là người hùng mà tôi cần. Cảm ơn!
BinarySolo

1
Haha không lo lắng gì cả
Chris

Tôi gặp lỗi khi nói Property editor.snippetSuggestions is not allowed, đó là về cái gì?
Bossan 30/06/18

@Bossan "editor.snippetSuggestions": "top"nên được đặt trong tệp settings.json ( ctrl+shift+pvà loại user settings) Ngoài ra, bạn có thể tìm kiếm thuộc tính này trong cài đặt người dùng chung (Tùy chọn> Cài đặt) và sử dụng menu thả xuống để thay đổi nó thành top.
bordeaux

29

logvà đánh enter. Nó sẽ tự động hoàn thànhconsole.log();


Tôi dường như gặp lỗi khi gõ logvà nhấn enter chỉ có kết quả đầu ra console.log();trong một số trường hợp và tôi không thể tìm ra lý do tại sao? Có phải chỉ tôi hay những người khác có thể nhập logsau đó nhập và nhận được console.log();đầu ra nhất quán mỗi lần?
Ben Clarke

2
Bạn phải đợi vài milisenconds / giây để dòng lệnh thực hiện lại những gì bạn đã nhập. đôi khi nó bị
trễ

24

Trong Atom, có một phím tắt đẹp cho console.log () và tôi cũng muốn như vậy trong VS Code.

Tôi đã sử dụng giải pháp của @kamp nhưng tôi phải mất một lúc để tìm ra cách thực hiện. Đây là các bước tôi đã sử dụng.

  1. Đi tới: Tệp> Tùy chọn> Phím tắt

  2. Ở đầu trang, bạn sẽ thấy một thông báo cho biết: Đối với các tùy chỉnh nâng cao, hãy mở và chỉnh sửa keybindings.json

Bấm vào liên kết

  1. Thao tác này sẽ mở ra hai ngăn: liên kết khóa mặc định và liên kết tùy chỉnh của bạn.

Nhập mã vào khung bên phải

  1. Nhập mã do @kamp cung cấp

Cảm ơn bạn đã bước chi tiết
Moaaz Bhnas

23

Cách khác là mở tệp keybindings.json và thêm tổ hợp phím mong muốn của bạn. Trong trường hợp của tôi, đó là:

{
    "key": "cmd+shift+l",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
      "snippet": "console.log($1)$0;"
    }
}

"ctrl + shift + c" cho "chìa khóa" là một chút dễ dàng hơn để bấm bằng một tay IMO và nó vẫn chưa được thực hiện bởi keybinding khác nếu bạn sử dụng mặc định vs keybindings đang
russiansummer

15

Bất kỳ ai đang tìm kiếm Các tùy chỉnh nâng cao hãy mở và chỉnh sửa keybindings.json

nhập mô tả hình ảnh ở đây

Nhấp vào biểu tượng nhỏ này để mở keybindings.json.

Sử dụng mã này để tạo cả console.log () & để tạo console.log ("Word") cho văn bản đã chọn.

{
  "key": "ctrl+shift+l",
  "command": "editor.action.insertSnippet",
  "when": "editorTextFocus",
  "args": {
    "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
  }
}

1
cảm ơn, trên mac phải đi tới mã-> tùy chọn-> phím tắt và nhấp vào nút đó hơn là đặt {...} bên trong mảng.
rdprado

1
cảm ơn anh bạn, ai đó nên cập nhật câu trả lời được chấp nhận để mọi người khác có thể bỏ qua 10 phút tìm kiếm
Kris Lamote

1
Bạn đã tiết kiệm rất nhiều thời gian! Cảm ơn
Nhà phát triển React

Điều này không có trên máy Mac của tôi. Tôi cần thực hiện cmd + shift + p và sau đó tìm kiếm các phím tắt (JSON)
martinedwards

10

Khi bạn gõ nhật ký từ , bạn sẽ thấy như sau:

Chọn phương thức cho biết Đăng nhập vào bảng điều khiển

Chọn một trong đó có ghi Đăng nhập vào bảng điều khiển trong trường hợp bạn thấy các tùy chọn nhật ký khác nhau (về cơ bản điều đó có thể thực hiện được khi bạn có một số định danh với nhật ký tên.

Bấm Enter.

console.log () được nhập tự động!

Intellisense sẽ làm công việc của nó!


9

Trong trường hợp có ai quan tâm đến việc đưa văn bản hiện được chọn vào console.log()câu lệnh:

{
    "key": "cmd+shift+l",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
      "snippet": "console.log(${TM_SELECTED_TEXT}$1)$0;"
    }
}

Điều này thật tuyệt!
AJ Hsu

9

Gõ 'clg' rồi nhấn ctrl+ spacevà nhấn enter, nó sẽ tự động hoàn thành console.log().
Đối với điều này, bạn chỉ cần cài đặt một phần mở rộng tức là các đoạn mã JavaScript (ES6).


Cũng 'cwa' cho console.warn ()
Amir Shabani

8

clg + tab

hoặc như đã đề cập ở trên,

log + enter (tùy chọn thứ hai trong trình đơn thả xuống)

Đây là một câu hỏi cũ, nhưng tôi hy vọng sẽ hữu ích cho một số người khác.


clg + tab ChannelMergerNodecho tôi!
jb

Tôi nghĩ bạn cần chỉnh sửa keybindings của mình như đã đề cập trong các câu trả lời ở trên;)
palmaone

2

Dưới đây là văn bản hiện được chọn với các dấu nháy đơn. Hy vọng nó giúp

// Place your key bindings in this file to overwrite the defaults
[{
    "key": "ctrl+shift+c",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
        "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
    }

}]

2

Đây là một giải pháp tốt hơn

{
        "key": "cmd+shift+c",
        "command": "editor.action.insertSnippet",
        "when": "editorTextFocus",
        "args": {
            "snippet": "console.log('${TM_SELECTED_TEXT}', $TM_SELECTED_TEXT$1);"
        }
    }

2

Tôi không biết mình đang sử dụng tiện ích mở rộng nào nhưng tôi chỉ cần gõ log và nhấn tab để autocomplete console.log (); đặt con trỏ giữa các dấu ngoặc nhọn.


1

covà nhấn tabhoặc enter.

Nên làm việc ra khỏi hộp.


Tôi nghĩ điều này có thể không đáng tin cậy lắm hoặc phụ thuộc vào các tiện ích mở rộng. Đối với tôi, co + enter chỉ tạo ra đầu ra văn bản và co + tab tạo ra "xác nhận". Ngay cả "khuyết điểm" + tab chỉ tạo ra "bảng điều khiển".
Joel Peltonen

0

Thay vào đó, bạn có thể tạo một hàm dễ viết để gọi console.log và sau đó chỉ cần gọi hàm đó.

 var a = funtion (x) {console.log(x)}
 a(2*2);        //prints 4

1
Đây không phải là câu trả lời cho câu hỏi của OP vì điều này sẽ phải được nhập vào mọi dự án và chỉ là một mối phiền toái trực tiếp. Có một keybind inbuilt chắc chắn họ con đường để đi đây
Ngọt Chilly Philly
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.