關于TypeScript中import JSON的正確姿勢詳解
前言
Typescript是微軟內部出品的,用actionscript的語法在寫js的一門新語言,最近 TypeScript 中毒,想想我一個弱類型出身的人,怎么就喜歡上了類型約束……當然這不是重點,重點可能還是 JS 沒有接口,我沒法靠 class 語法糖寫的非常 OO……下面這篇文章想說的其實是在 ts 中如何正確的 import json 格式。
首先我使用了基本姿勢
import * as variable from './fooooooo.json'
結果發(fā)現(xiàn)他提示我并沒有這個 module(Cannot find module),咋回事呀大佬,明明 JavaScript 中我可以正常使用。
查了一下,找到了一個方法:
命名一個 typings.d.ts:
declare module "*.json" {
const value: any;
export default value;
}
接下來理論上你就可以愉快的使用了,比如
import * as variable from './fooooooo.json' const data = (variable as any).data
當然在使用中由于我不小心寫錯了 config 文件的文件名所以沒有生效于是……我又去找了別的方法。
比如可以使用 @types/node 加上 require 引入,如果你的服務中禁用 any,這也是一個比較好的方法。
甚至你可以手寫讀取文件,不過感覺上去還是比較智障……還是覺得前面兩種方法更優(yōu)雅一點
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
javascript函數(shù)報Uncaught?ReferenceError:?XXX?is?not?define
本文主要介紹了javascript函數(shù)報Uncaught?ReferenceError:?XXX?is?not?defined,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07
Ext JS動態(tài)加載JavaScript創(chuàng)建窗體的方法
這篇文章主要介紹了Ext JS動態(tài)加載JavaScript創(chuàng)建窗體的方法 ,需要的朋友可以參考下2016-06-06

