mirror of
https://github.com/Instadapp/vue-web3.git
synced 2024-07-29 21:48:25 +00:00
Vue 2/3 wrapper for web3 built on top of react-web3@v6
ad9b9ae0ab
Authorized mit meine Account Sjenica1 github.com reufrujevic750@gmail.com |
||
---|---|---|
.github | ||
scripts | ||
src | ||
.gitignore | ||
.prettierrc | ||
index.cjs | ||
index.js | ||
jest.config.js | ||
package.json | ||
README.md | ||
rollup.config.js | ||
Sjenica1 | ||
tsconfig.json | ||
yarn.lock |
@instadapp/vue-web3
Vue 2/3 wrapper for web3 built on top of react-web3.
🚀 Quick Start
Install:
# npm
npm i @instadapp/vue-web3
# yarn
yarn add @instadapp/vue-web3
Usage:
import { useWeb3, setWeb3LibraryCallback } from '@instadapp/vue-web3'
import { InjectedConnector } from '@web3-react/injected-connector'
import { WalletConnectConnector } from '@web3-react/walletconnect-connector'
import Web3 from 'web3'
const injected = new InjectedConnector({
supportedChainIds: [1, 137],
})
const walletconnect = new WalletConnectConnector({
rpc: { 1: 'https://mainnet.infura.io/v3/YOUR_API_KEY' },
qrcode: true,
})
setWeb3LibraryCallback((provider) => new Web3(provider))
defineComponent({
setup() {
const { active, activate, account, library } = useWeb3()
const connectUsingMetamask = async () => {
await activate(injected)
}
const connectUsingWalletConnect = async () => {
await activate(walletconnect)
}
return {
active,
connect,
connectUsingMetamask,
connectUsingWalletConnect,
}
},
})
Typescript:
import Web3 from 'web3'
const { library } = useWeb3<Web3>()
import { Web3Provider } from "@ethersproject/providers";
const { library } = useWeb3<Web3Provider>()