javascript - 如何将反应项目中的打字稿功能与常见的 html 网站共享?
问题描述
我想将一个复杂的打字稿导出函数分享到一个简单的 HTML - javascript 网站
我尝试使用 npm tsc 将文件转换为 javascript,但生成的文件具有“导出”功能,会在浏览器控制台中创建错误。
我的函数.ts
export const getTest = (test: any) => {
// Change test object
return test;
};
生成 myFunction.js
Object.defineProperty(exports, "__esModule", { value: true });
exports.getTest = function (test) {
// Change test object
return test;
};
当我尝试在 HTML 文件中包含带有脚本标记的文件时,浏览器控制台实际上警告我“未捕获的 ReferenceError:未定义导出”。
我究竟做错了什么?
解决方案
为了使用原始myFunction.ts
文件,您需要做的就是:
删除输入并将扩展名更改为.js
:
export const getTest = (test) => {
// Change test object
return test;
};
然后,在<script>
该 JavaScript 文件的 HTML 文件标记中,确保将属性设置type
为module
:
<script type="module" src="myFunction.js"></script>
最后,您需要import
在您打算使用它的地方使用该功能。
只要您考虑浏览器兼容性,就应该这样做:
为了最终明确这一点,这里有一个Plunkr来证明我的意思。
推荐阅读
- spring-boot - 春季云任务多个数据源的问题
- c++ - 用于存储通用 lambda 的通用 std::function
- python - Keras 模型编译错误:TypeError:“张量”类型的对象没有 len() model.compile
- python - 从ui文件加载的PySide2 QMainWindow未触发窗口事件
- python - 蛮力 360 度模板匹配 OpenCV Python
- selenium - 如何在 ZAP selenium 中使用 ZAP JxBrowser?
- c# - 重用实体框架 Sqlite DBContext 是否安全?
- r - 如何在 R 中删除值超过 90% 为“0”的列
- php - 如何使用 apache 和 php 调试 HTTP ERROR 500?
- msbuild - 使用 MSBuild api 15.9.20 构建(编译)wixproj 时出错