对象会被包装成contract对象,如下: // truffle-resolver -> require(import_path, search_path) var contract = require("truffle-contract return abstraction; } 可以看到,不管是deployer.deploy(ConvertLib)还是deployer.link(ConvertLib, MetaCoin),它们接收的参数都是truffle-contract destination.link(library); } 根据我们之前得到的启示,destination和library都是truffle-contract对象,所以contract.link(lib) 函数的定义位于项目truffle-contract中。
/stylesheets/app.css"; //导入web3和truffle-contract库 import { default as Web3} from 'web3'; import { default as contract } from 'truffle-contract' //导入Hello合约的ABI文件 import Hello_artifacts from '../..
以下是非必需工具 $ npm install truffle-contract 基于web3.js封装的JavaScript与智能合约交互接口,通过链式调用将对合约的各个操作串联在一起,具体API参考源码地址 :https://github.com/trufflesuite/truffle-contract $ npm install express node.js社区中基于connect流行的服务器开发框架 获取合约示例 这一步我们首先获取宠物卡片合约和用户中心合约的实例,便于下面调用合约,这里我们需要依赖truffle-contract还有本地的Web3Provider模块。 而truffle-contract的用法都是链式调用,通过then函数连接起来。 contract = require('truffle-contract'); provider = require('.
import Contract from 'truffle-contract'; import VotingArtifact from '.. 智能合约 我用 Solidity 语言创建了一个简单的投票合约,使用 truffle-contract 作为一种抽象接口,以便在移动 dApp 中使用它。 合约是不可更改的。
Adoption.json', function(data) { // Get the necessary contract artifact file and instantiate it with truffle-contract
实例化合约 使用truffle-contract会帮我们保存合约部署的信息,就不需要我们手动修改合约地址,修改initContract()代码如下: initContract: function()
实例化合约 使用truffle-contract会帮我们保存合约部署的信息,就不需要我们手动修改合约地址,修改initContract()代码如下: initContract: function() Adoption.json', function(data) { // Get the necessary contract artifact file and instantiate it with truffle-contract
/node_modules/truffle-contract/node_modules/web3/lib/web3/event.js'); var transferErc20Json = { "
2、实例化合约 使用 truffle-contract 会帮我们保存合约部署的信息,就不需要我们手动修改合约地址,修改 initContract() 代码如下: initContract: function
优先使用MetaMask提供的Web3实例,truffle-contract会帮我们保存合约部署的信息。
Adoption.json', function(data) { // Get the necessary contract artifact file and instantiate it with truffle-contract