#Node.js的fs導入遇到的問題和解決方案


一直在使用VS Code,今天打算用Node.js進行文件IO時候遇到了一些問題,fs是Node.js的核心功能之一,一開始我用Javascript編寫fs模塊的導入。

var fs = require(“fs”);// It works well using javascript

看上去不錯,但我很想使用TypeScript提供的class、constructor 、let等有趣的新功能,所以我把后綴改成ts,打算提前嘗試一下這些在ES6甚至是ES7才會到來的新特性。但是很快,我就遇到了問題。
首先是require的錯誤:

var fs = require(“fs”);//cannot find name ‘require’

在查了一些資料之后,可能是因為缺乏在TypeScript下的Node.js定義文件(You need to include the definition file for node),通過安裝Typings(The TypeScript Definition Manager,一個TypeScript定義管理器)可以解決這個問題。

StackOverflow上的類似問題

在終端中使用$ npm install typings -g時候,可能會遇到遇到權限問題,在命令前加上sudo使用超級權限解決這個問題。

安裝之后可以輸入

typings -v

來查看版本確認成功安裝,在項目文件夾下啟動終端,使用

 typings install dt-node --global --save

安裝node的類型信息文件,typings的選項相當豐富,還有很多的配置可以選擇,配合typings可以為VSCode添加任意語言的類似snippet插件功能,超贊。
Visual Studio Code 使用 Typings 實現智能提示功能
在項目中會多出一個typings文件夾,在ts文件上方加入

/// <reference path="./typings/index.d.ts" />
import * as fs from 'fs';// It works well using TypeScript

通過TypeScript的方式導入的文件模塊才會出現代碼提示。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM