首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将typescript文件导入脚本标签

如何将typescript文件导入脚本标签
EN

Stack Overflow用户
提问于 2021-01-09 01:26:54
回答 2查看 558关注 0票数 2

我想要做的是将一个对象从我的typescript文件导入到一个脚本标记中

这就是我正在尝试做的事情

代码语言:javascript
运行
复制
<div id="app-root"></div>
<script>
import {config} from '../config.ts';

let script = document.createElement('script');
script.src = `https://maps.googleapis.com/maps/api/js?key=${config.GOOGLE_MAPS_KEY}`;

document.getElementsByTagName('script')[0].parentNode.appendChild(script);

</script>

我不确定这是否可能,但我的react应用程序正在# app -root中呈现,我正在尝试处理我的配置中的API密钥。当我运行这段代码时,什么也没有发生,但是如果我添加了静态值,它似乎可以工作。

我期望发生的是,通过将变量传递给脚本src,脚本将成功执行。

EN

回答 2

Stack Overflow用户

发布于 2021-01-09 02:12:52

不,在script标签中读取ts文件是不可能的(至少在没有把它编译成js的情况下是这样的)。

但是,您可以做的是使用环境变量,并让react-scripts将其编译到您的模板中,就像每次启动开发服务器或运行构建时它已经做的那样。

从这里开始:

https://create-react-app.dev/docs/adding-custom-environment-variables

首先,在项目的根目录下创建一个名为.env的环境文件

接下来,让我们将环境变量添加到此文件中:

代码语言:javascript
运行
复制
REACT_APP_GOOGLE_MAPS_KEY=<your key>

最后,修改index.html以引用我们的环境变量:

代码语言:javascript
运行
复制
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=%REACT_APP_GOOGLE_MAPS_KEY%"></script>

作为最后的想法,你可以在需要的地方用react的方式包含你的google地图依赖,而不是麻烦:通过使用react插件。看看这个。它将为您加载/卸载api,您可以在加载api时从config传入您的密钥:

https://www.npmjs.com/package/@react-google-maps/api

票数 1
EN

Stack Overflow用户

发布于 2021-01-09 02:15:38

需要将typescript文件编译/转换为JS ( .js文件),以便在浏览器中使用。

您可以在以下位置在线编译TS文件:https://www.typescriptlang.org/play并将输出复制到.js中

通过命令行安装它(假设您在Windows上)

代码语言:javascript
运行
复制
npm install typescript // add -g if you want to install it globally
cd intoYourFolder // change directory to the folder where you have the .ts file
tsc *.ts // this will compile all typescript files in the directory
tsc yourFile.ts // this will compile only a specific file
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65633621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档