2017-02-08 18 views
6

Đoạn sau đây cho thấy một lỗi đánh máy tại Hàng 4:Không thể tìm thấy tên 'bảng điều khiển'. Điều gì có thể là lý do cho điều này?

import {Message} from './class/message'; 

function sendPayload(payload : Object) : any{ 
    let message = new Message(payload); 
    console.log(message); // LINE 4 
} 

Lỗi nói:

[ts] Cannot find name 'console'. 

gì có thể là lý do cho việc này? Tại sao nó không thể tìm thấy đối tượng console?

+1

Trình duyệt nào bạn đang thử? Trong IE bạn sẽ không thấy giao diện điều khiển –

+0

@ A.R Tôi chưa thử trong trình duyệt. Nhận lỗi trình biên dịch bản ghi. – helloJSON

Trả lời

14

Bạn sẽ phải cài đặt @types/node để có được những typings nút, Bạn có thể đạt được điều đó bằng cách thực hiện lệnh dưới đây,

npm install @types/node 

Hope this helps!

+0

Tôi có cần làm gì khác không? Nó vẫn còn ném cảnh báo tương tự? – helloJSON

+0

Đây có phải là lỗi 'cảnh báo' (hoặc)' không? –

+0

Bạn cũng có thể thử cài đặt các kiểu đánh máy làm phụ thuộc vào địa phương của mình không ?. Bạn có thể thực hiện điều đó bằng cách thực thi, 'npm install @ types/node --save-dev' –

10

Thêm "dom" vào phần lib của bạn trong compilerOptions trong tsconfig.json.

Ví dụ:

{ 
    "compilerOptions": { 
     "rootDir": "src", 
     "outDir": "bin", 
     "module": "commonjs", 
     "noImplicitAny": false, 
     "removeComments": true, 
     "preserveConstEnums": true, 
     "sourceMap": true, 
     "target": "es5", 
     "lib": [ 
      "es6", 
      "dom" <------- Add this "dom" here 
     ], 
     "types": [ 
      "reflect-metadata" 
     ], 
     "moduleResolution": "node", 
     "experimentalDecorators": true, 
     "emitDecoratorMetadata": true 
    } 
} 
1

Có một, nhưng cách hacky đơn giản để có được console.log công việc: thay vì console.log(message) ghi eval('console').log(message).

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