Comments (4)
Just added console.log to check the version within getWeb3.js
import Web3 from 'web3'
const resolveWeb3 = (resolve) => {
let { web3 } = window
const alreadyInjected = typeof web3 !== 'undefined' // i.e. Mist/Metamask
const localProvider = `http://localhost:9545`
if (alreadyInjected) {
console.log(`Injected web3 detected.`)
console.log('web.version =', web3.version)
web3 = new Web3(web3.currentProvider)
} else {
console.log(`No web3 instance injected, using Local web3.`)
const provider = new Web3.providers.HttpProvider(localProvider)
web3 = new Web3(provider)
}
console.log('web.version =', web3.version)
resolve(web3)
}
Result >>>
[HMR] connected
getWeb3.js:10 Injected web3 detected.
getWeb3.js:11 web.version = {api: "0.20.3", getNode: ƒ, getNetwork: ƒ, …}
getWeb3.js:18 web.version = 1.0.0-beta.35
Web3Container.js:19 TypeError: Cannot read property 'address' of undefined
at _callee$ (getContract.js:4)
at tryCatch (runtime.js:62)
at Generator.invoke [as _invoke] (runtime.js:296)
at Generator.prototype.(:3000/anonymous function) [as next] (http://localhost:3000/_next/static/commons/main.js:30258:21)
at step (ERC721Vehicle.json:1)
at _next (ERC721Vehicle.json:1)
from truffle-next.
Seems like it's not getting the correct network ID? Have a look at this: https://github.com/adrianmcli/truffle-next/blob/master/client/lib/getContract.js#L3-L4
from truffle-next.
Actually I already use this = your code.
I ended up doing the truffle unbox again, merged my code back in and somehow it solved the problem.
Now I just can't get my contract calls to works, although they look the same as your example store/get.
newVehicleToken = async () => {
const { accounts, contract } = this.props
const model = 'Porsche Cayenne'
const vin = 'WP1AB29P64LA63732'
const ein = 'AFD'
const tokenId = await contract.methods.mintNewVehicleToken(
web3.utils.utf8ToHex(model),
web3.utils.utf8ToHex(vin),
web3.utils.utf8ToHex(ein)).send({ from: accounts[0] })
this.setState({ lastTokenId: tokenId })
};
getVehicleData = async () => {
const tokenId = 1;
const { accounts, contract } = this.props
const response = await contract.methods.getVehicleData(tokenId).call({ from: accounts[0] })
console.log('getVehicleData(1) : response =', response)
this.setState({ model: response[0], vin: response[1], ein: response[2] })
console.log('model =', this.state.model)
};
newVehicleToken
comes back with a strange error
errors.js:29 Uncaught (in promise) Error: Returned error: Error: Error: [ethjs-rpc] rpc error with payload {"id":5221641951666,"jsonrpc":"2.0","params":["0xf901ad0e8504a817c800836170d494345ca3e014aaf5dca488057592ee47305d9b3e1080b9014430cfb0a9000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000203078353036663732373336333638363532303433363137393635366536653635000000000000000000000000000000000000000000000000000000000000002430783537353033313431343233323339353033363334346334313336333333373333333200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000830783431343634340000000000000000000000000000000000000000000000008222e2a078cc9442953defaf17b42b506dbf267c3f0a0ba41be399668fcf6438cc5bf543a05576e00d798e479738dd26cde1e8238a111289b5838a23ec1e7949ad05f2f7b9"],"method":"eth_sendRawTransaction"} Error: VM Exception while processing transaction: revert
at Object.ErrorResponse (errors.js:29)
at index.js:140
at inpage.js:1
at inpage.js:1
at i (inpage.js:1)
at inpage.js:1
at inpage.js:1
at u (inpage.js:1)
at s (inpage.js:1)
at inpage.js:1
ErrorResponse @ errors.js:29
(anonymous) @ index.js:140
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
i @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
u @ inpage.js:1
s @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
u @ inpage.js:1
s @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
u @ inpage.js:1
(anonymous) @ inpage.js:1
He @ inpage.js:1
(anonymous) @ inpage.js:1
value @ inpage.js:1
(anonymous) @ inpage.js:1
n @ inpage.js:1
i @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
n @ inpage.js:1
i @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
u @ inpage.js:1
s @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
(anonymous) @ inpage.js:1
Promise.then (async)
step @ 6.855d9f7f66e26aa81ee5.hot-update.js:20
_next @ 6.855d9f7f66e26aa81ee5.hot-update.js:20
(anonymous) @ 6.855d9f7f66e26aa81ee5.hot-update.js:20
(anonymous) @ 6.855d9f7f66e26aa81ee5.hot-update.js:20
value @ dapp.js:35
callCallback @ react-dom.development.js:100
invokeGuardedCallbackDev @ react-dom.development.js:138
invokeGuardedCallback @ react-dom.development.js:187
invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:201
executeDispatch @ react-dom.development.js:461
executeDispatchesInOrder @ react-dom.development.js:483
executeDispatchesAndRelease @ react-dom.development.js:581
executeDispatchesAndReleaseTopLevel @ react-dom.development.js:592
forEachAccumulated @ react-dom.development.js:562
runEventsInBatch @ react-dom.development.js:723
runExtractedEventsInBatch @ react-dom.development.js:732
handleTopLevel @ react-dom.development.js:4476
batchedUpdates$1 @ react-dom.development.js:16659
batchedUpdates @ react-dom.development.js:2131
dispatchEvent @ react-dom.development.js:4555
interactiveUpdates$1 @ react-dom.development.js:16714
interactiveUpdates @ react-dom.development.js:2150
dispatchInteractiveEvent @ react-dom.development.js:4532
2nd get.. likely does not work for same reason or because their is no data yet.
Just in case if you have some time to look at the full picture ...
https://github.com/SvenMeyer/VehicleHistoryLog
from truffle-next.
I'm not sure about that, it might have something to do with your gasLimit
? Either way, I think that's more of an application specific bug, so I think I'll close this issue now.
from truffle-next.
Related Issues (20)
- Add linting for development (but not for end users) HOT 1
- Fancy up the README a bit
- Allow injection of custom loading component
- Why just one HOC? Why not Render Prop? Why not a compound component?
- Web3Container.js not mounting component for TestRPC/Ganache-CLI HOT 22
- Show usage of web3 HOT 1
- Install failing on Windows due to fsevents HOT 8
- Invalid JSON RPC response when loading Web3Container HOT 2
- Thoughts on utilizing Truffle's Drizzle Web3 state management package HOT 5
- Component to track and automate contract deployment? HOT 3
- error while truffle unbox HOT 4
- Error: SimpleStorage has not been deployed to detected network (network/artifact mismatch) HOT 1
- code?id=105&subid=51824_5680_:1 Uncaught ReferenceError: jQuery is not defined HOT 2
- My Dapp and My Accounts pages are stuck HOT 5
- License missing HOT 2
- npm error while installing truffle-next in windows HOT 5
- Separate Truffle project from frontend client HOT 1
- Switching pages in Next.js may cause app to lose web3
- Make HOC so each page could easily use Web3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from truffle-next.