绝对类型的 log4javascript 缺少模块声明
Posted
技术标签:
【中文标题】绝对类型的 log4javascript 缺少模块声明【英文标题】:DefinitelyTyped log4javascript missing module declaration 【发布时间】:2016-12-14 08:16:30 【问题描述】:我很难在我的项目中使用以下类型文件:
https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/log4javascript
显然,该文件缺少模块声明,当我将以下语句放入我的 typescript 文件时,导致 typescript 抱怨找不到模块“log4javascript”:
import * as log4javascript from 'log4javascript';
当我手动编辑通过运行命令安装的 index.d.ts 文件时
typings install dt~log4javascript --global --save
我添加了这个模块声明:
declare module "log4javascript"
import test = log4javascript;
export = test;
在文件末尾,编译器不再抱怨,我的代码甚至可以在不使用import *
语句的情况下工作。
那么我应该如何使用类型文件,以便我可以将 log4javascript 与 typescript 一起使用?
更新
我已经设法通过创建一个custom.d.ts
文件来解决这个问题,该文件声明 log4javascript 模块以及生成的类型的根 index.d.ts 并在我的 main.ts 文件中添加了一个 ///<reference path="..." />
语句,供 requirejs 使用.
我仍然觉得这不是正确的做法,但目前可行。
【问题讨论】:
【参考方案1】:我设法通过创建一个custom.d.ts
文件来解决这个问题,该文件声明 log4javascript 模块以及生成的类型的根 index.d.ts,并在我的 main.ts 文件中添加了一个 ///<reference path="..." />
语句,供 requirejs 使用.
我仍然不觉得这是正确的做法,但它现在有效。
【讨论】:
以上是关于绝对类型的 log4javascript 缺少模块声明的主要内容,如果未能解决你的问题,请参考以下文章
log4javascript 是不是容易受到 Apache Log4j(Java 日志库)远程代码执行 CVE-2021-44228 的攻击?
1.模块2.循环导入问题及解决思路3.区分py文件的两种类型4.模块的查找顺序5.模块的绝对导入与相对导入6.项目开发的目录规范
MySQL 排序规则类型是不是需要匹配 PHP 页面字符集类型?