关于TypeScript中import JSON的正确姿势详解


Posted in Javascript onJuly 25, 2017

前言

Typescript是微软内部出品的,用actionscript的语法在写js的一门新语言,最近 TypeScript 中毒,想想我一个弱类型出身的人,怎么就喜欢上了类型约束……当然这不是重点,重点可能还是 JS 没有接口,我没法靠 class 语法糖写的非常 OO……下面这篇文章想说的其实是在 ts 中如何正确的 import json 格式。

首先我使用了基本姿势

import * as variable from './fooooooo.json'

结果发现他提示我并没有这个 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,这也是一个比较好的方法。

甚至你可以手写读取文件,不过感觉上去还是比较智障……还是觉得前面两种方法更优雅一点

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
在JavaScript中通过URL传递汉字的方法
Apr 09 Javascript
javascript按位非运算符的使用方法
Nov 14 Javascript
JSON+HTML实现国家省市联动选择效果
May 18 Javascript
javascript制作的网页侧边弹出框思路及实现代码
May 21 Javascript
jquery代码实现多选、不同分享功能
Jul 31 Javascript
浅谈Javascript数据属性与访问器属性
Jul 26 Javascript
jquery实现自适应banner焦点图
Feb 16 Javascript
使用Dropzone.js上传的示例代码
Oct 10 Javascript
React Native 通告消息竖向轮播组件的封装
Aug 25 Javascript
JS简单实现动态添加HTML标记的方法示例
Apr 08 Javascript
解决linux下node.js全局模块找不到的问题
May 15 Javascript
在antd中setFieldsValue和defaultVal的用法
Oct 29 Javascript
微信JSSDK调用微信扫一扫功能的方法
Jul 25 #Javascript
利用node.js爬取指定排名网站的JS引用库详解
Jul 25 #Javascript
详解angularjs获取元素以及angular.element()用法
Jul 25 #Javascript
以BootStrap Tab为例写一个前端组件
Jul 25 #Javascript
基于Bootstrap的标签页组件及bootstrap-tab使用说明
Jul 25 #Javascript
js事件委托和事件代理案例分享
Jul 25 #Javascript
基于JavaScript实现多级菜单效果
Jul 25 #Javascript
You might like
在apache下限制每个虚拟主机的并发数!!!!
2006/10/09 PHP
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
PHP使用DOMDocument类生成HTML实例(包含常见标签元素)
2014/06/25 PHP
PHP的Yii框架中YiiBase入口类的扩展写法示例
2016/03/17 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
js右键菜单效果代码
2007/07/21 Javascript
JS 的应用开发初探(mootools)
2009/12/19 Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
2013/04/02 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
jQuery EasyUI Dialog拖不下来如何解决
2015/09/28 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
2016/03/28 Javascript
Node.js的Koa框架上手及MySQL操作指南
2016/06/13 Javascript
js中 计算两个日期间的工作日的简单实例
2016/08/08 Javascript
第一次接触神奇的Bootstrap导航条
2016/08/09 Javascript
vue.js全局API之nextTick全面解析
2017/07/07 Javascript
Javascript es7中比较实用的两个方法示例
2017/07/21 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
express框架中使用jwt实现验证的方法
2019/08/25 Javascript
微信小程序如何实现五星评价功能
2019/10/15 Javascript
js实现拾色器插件(ColorPicker)
2020/05/21 Javascript
[01:56]生活中的妖精之七夕特别档
2016/08/09 DOTA
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
Python中单例模式总结
2018/02/20 Python
python输出决策树图形的例子
2019/08/09 Python
Python SELENIUM上传文件或图片实现过程
2019/10/28 Python
Python 如何操作 SQLite 数据库
2020/08/17 Python
HTML5添加鼠标悬浮音响效果不使用FLASH
2014/04/23 HTML / CSS
详解HTML5中表单验证的8种方法介绍
2016/12/19 HTML / CSS
入党积极分子思想汇报范文
2014/01/05 职场文书
个人欠款担保书
2014/05/20 职场文书
2015年医德考评自我评价
2015/03/03 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android
「睡美人」爱洛公主粘土人开订
2022/03/22 日漫