cbr*_*nch 5 knockback.js typescript webpack
使用TypeScript,有没有办法对import一个已经被webpack UMD(通用模块定义)封装的模块?例如:
npm install knockback
Run Code Online (Sandbox Code Playgroud)
.js 文件 ( node_modules/knockback/knockback.js) 像这样开始:
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("knockout"), require("backbone"), ....
else if(typeof define === 'function' && define.amd)
define(["knockout", "backbone", "underscore"], function webpackLoadOptionalExternalModuleAmd( ....
});
else if(typeof exports === 'object')
exports["kb"] = factory(require("knockout"), require("backbone"), require("underscore"), (function ....
else
root["kb"] = factory(root["ko"], root["Backbone"], root["_"], root["jQuery"]);
Run Code Online (Sandbox Code Playgroud)
当我尝试将其导入 .ts 文件时,tsc 产生错误:
import * as k from 'knockback/knockback';
TS2307: Build: Cannot find module 'knockback/knockback'.
Run Code Online (Sandbox Code Playgroud)
除了编辑knockback.js 文件,我还能做些什么来说服tsc 导入这个.js?我正在使用 Typescript 1.8。
当我尝试将其导入 .ts 文件时,tsc 会产生错误:
您可以很容易地使用类型定义文件
文件knockback.d.ts
declare module 'knockback/knockback' {
var foo: any;
export = foo;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3349 次 |
| 最近记录: |