关于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 相关文章推荐
js触发asp.net的Button的Onclick事件应用
Feb 02 Javascript
javascript重写alert方法的实例代码
Mar 29 Javascript
JS实现模仿微博发布效果实例代码
Dec 16 Javascript
使用jquery修改表单的提交地址基本思路
Jun 04 Javascript
使用JavaScript开发IE浏览器本地插件实例
Feb 18 Javascript
jQuery晃动层特效实现方法
Mar 09 Javascript
javaScript中with函数用法实例分析
Jun 08 Javascript
文件上传的几个示例分享【推荐】
Dec 16 Javascript
js实现交通灯效果
Jan 13 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
Jul 27 Javascript
JS SetInterval 代码实现页面轮询
Aug 11 Javascript
Vue单页面应用中实现Markdown渲染
Feb 14 Vue.js
微信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
php.ini中的php-5.2.0配置指令详解
2008/03/27 PHP
PHP实现的装箱算法示例
2018/06/23 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
PHP后台备份MySQL数据库的源码实例
2019/03/18 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
2020/05/02 PHP
javascript 屏蔽鼠标键盘的几段代码
2008/01/02 Javascript
菜鸟javascript基础资料整理2
2010/12/06 Javascript
nodejs通过phantomjs实现下载网页
2015/05/04 NodeJs
javascript冒泡排序小结
2016/04/10 Javascript
jQuery Ajax和getJSON获取后台普通json数据和层级json数据用法分析
2016/06/08 Javascript
angularJS深拷贝详解
2017/03/23 Javascript
vue-resource + json-server模拟数据的方法
2017/11/02 Javascript
Angular中支持SCSS的方法
2017/11/18 Javascript
vue1.0和vue2.0的watch监听事件写法详解
2018/09/11 Javascript
使用Vuex解决Vue中的身份验证问题
2018/09/28 Javascript
详解JavaScript中typeof与instanceof用法
2018/10/24 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
JavaScript实现答题评分功能页面
2020/06/24 Javascript
Python3实现连接SQLite数据库的方法
2014/08/23 Python
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
使用简单工厂模式来进行Python的设计模式编程
2016/03/01 Python
django获取from表单multiple-select的value和id的方法
2019/07/19 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
2019/08/20 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
美国存储和组织商店:The Container Store
2017/08/16 全球购物
全球最大的游戏市场:G2A
2018/07/05 全球购物
潘多拉珠宝俄罗斯官方网上商店:PANDORA俄罗斯
2020/09/22 全球购物
50道外企软件测试面试题
2014/08/18 面试题
学生保证书范文
2014/04/28 职场文书
企业承诺书格式
2014/05/21 职场文书
班子四风对照检查材料思想汇报
2014/09/29 职场文书
2015年社会实践个人总结
2015/03/06 职场文书
工作失职自我检讨书
2015/05/05 职场文书
读《推着妈妈去旅行》有感1500字
2019/10/15 职场文书
Win11绿屏怎么办?Win11绿屏死机的解决方法
2021/11/21 数码科技