如何在 JavaScript 中加载合约 ABI
How to load contract ABI in JavaScript
目前near-js-sdk
和create-near-app
展示了如何在JavaScript中手动定义你的合约接口:
来自 main.test.js
(https://github.com/near/create-near-app/blob/master/templates/react/src/main.test.js#L5):
window.contract = await near.loadContract(nearConfig.contractName, {
viewMethods: ['get_greeting'],
changeMethods: [],
sender: window.accountId
})
但是手动描述合约接口比较麻烦。如何让 NEAR 直接从 cargo build
?
生成的编译器文件中加载合约 ABI 信息
我们还没有为合约生成 ABI,因为我们希望支持所有编译为 Wasm 的语言,这将使定义 language-agnostic ABI 变得非常困难。然而,我们已经尝试了一些想法:https://github.com/near/borsh/tree/master/borsh-rs/borsh-schema-derive-internal然而,它们远未被整合。
目前near-js-sdk
和create-near-app
展示了如何在JavaScript中手动定义你的合约接口:
来自 main.test.js
(https://github.com/near/create-near-app/blob/master/templates/react/src/main.test.js#L5):
window.contract = await near.loadContract(nearConfig.contractName, {
viewMethods: ['get_greeting'],
changeMethods: [],
sender: window.accountId
})
但是手动描述合约接口比较麻烦。如何让 NEAR 直接从 cargo build
?
我们还没有为合约生成 ABI,因为我们希望支持所有编译为 Wasm 的语言,这将使定义 language-agnostic ABI 变得非常困难。然而,我们已经尝试了一些想法:https://github.com/near/borsh/tree/master/borsh-rs/borsh-schema-derive-internal然而,它们远未被整合。