我想使用我放入一个名为Terra.js的文件中的terra-test.js回购文件中的示例代码
import { LCDClient, Coin } from '@terra-money/terra.js';
// connect to bombay testnet
const terra = new LCDClient({
URL: 'https://bombay-lcd.terra.dev',
chainID: 'bombay-12',
});
// To use LocalTerra
// const terra = new LCDClient({
// URL: 'http://localhost:1317',
// chainID: 'localterra'
// });
// get the current swap rate from 1 TerraUSD to TerraKRW
const offerCoin = new Coin('uusd', '1000000');
terra.market.swapRate(offerCoin, 'ukrw').then(c => {
console.log(`${offerCoin.toString()} can be swapped for ${c.toString()}`);
});但是当我想通过index.html调用脚本函数时
<html>
<head>
<title>Terra.js Test</title>
</head>
<body>
<script type="module" src="terra-test.js"></script>
</body>
</html>..。我知道这个错误:
Uncaught TypeError: Failed to resolve module specifier "@terra-money/terra.js". Relative references must start with either "/", "./", or "../".谁能给我指明正确的方向吗?非常感谢!
发布于 2022-03-17 10:24:04
如果您只想获得共享的TerraJS示例的经验,那么使用NodeJS从命令行运行它(当然,在npm安装模块之后)
在浏览器中运行的“最新”JavaScript与从命令行或作为服务器运行JavaScript的NodeJS相比,历史上存在许多挑战。最大的挑战是模块、导入、依赖和打包。
我使用过TerraJS的所有用户界面示例都使用了React和应用程序,甚至NextJS。其中使用Babel和Webpack封装节点模块在浏览器中工作(例如。使用index.html工作,特别是当模块中存在依赖项时)。我最近尝试使用另一个项目(与Terra无关),这是一个早期的项目,目的是帮助打包模块,并允许它们在浏览器中工作。
我的建议是拥抱对您的TerraJS前端和用户界面开发的响应。并接受NodeJS,因为它只是直接使用TerraJS库。
发布于 2022-01-02 07:48:37
您是否通过npm软件包管理器安装了该模块?npm install @terra-money/terra.js
https://stackoverflow.com/questions/70488775
复制相似问题