使用Typescript在vue.js中加载JSON文件

时间:2018-02-17 01:31:19

标签: json typescript vue.js

我使用import * as config from './config.json'; 3创建了一个带有打字稿应用程序的vue.js并选择了typescript选项。

现在我正在尝试导入.json文件:

Version: typescript 
2.7.17:25, tslint 5.9.1 
Cannot find module './config.json'.

但是不断收到编译错误:

config.json

.ts文件就在试图加载它的override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { let touch:UITouch = touches.first! let positionInScene = touch.location(in: self) let touchedNode = self.atPoint(positionInScene) if let name = touchedNode.name { if name == "playLbl" { print("playLbl Touched") } } } 旁边。

使用vue-cli模板加载.json是否需要添加任何其他配置?

2 个答案:

答案 0 :(得分:3)

有几种方法可以解决这个问题。一种方法是使用require()而不是导入非js文件:

const config = require('./config.json')

您还可以创建一个带有wildcard module declaration (under "Wildcard module declarations")的.d.ts文件,以便导入JS文件。你可以把它放在任何地方,包括它和任何.ts文件一样。

// json-module.d.ts
declare module '*.json' {
  const data: any
  export default data
}

// since we use a default export, we now import it like this
import config from './config.json'

答案 1 :(得分:2)

在您的tsconfig.json中添加“ resolveJsonModule”:true