国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式

這篇具有很好參考價(jià)值的文章主要介紹了Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

我們會基本使用顯然不夠啊
我們要去了解mustache的原理 乃至自己去寫一個(gè)mustache

首先 mustache 不是不能用簡單的正則表達(dá)式來實(shí)現(xiàn)
但是 這里為了讓大家理解 為什么不能 我們還是用簡單正則寫一下

我們創(chuàng)建一個(gè) html文件
然后 編寫代碼如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id = "list"></div>
    
    <script>
        var templateStr = `<h1>我是一只{{name}},今年{{age}}歲啦</h1>`;
        var data = {
            name: "小貓貓",
            age: 2
        }
    </script>
</body>
</html>

這里 我們定義了一個(gè)模板字符串 templateStr 寫的是一個(gè) h1的頁面模板字符串
在下面定義了一個(gè) data的對象 模板字符串里面用了data中的兩個(gè)字段

那么 我們現(xiàn)在就需要寫一個(gè)函數(shù) 將他們寫入到dom樹中

我們在下面編寫這樣一段代碼

console.log(templateStr.replace(/\{\{(\w+)\}\}/g, function(a, b, c){
  console.log(a, b, c);
    return "*";
}));

Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
相信replace函數(shù) 大家都不會陌生 字符串替換
這里 我們 寫的 是 捕獲 {{ }} 一對花括號 里面帶有字母的內(nèi)容
{{ 代表捕獲 {{ 同理 }} 捕獲 }} 一對小括號 代表捕獲 里面 \w代碼字母 后面一個(gè)加號 代表一個(gè) 或者 多個(gè) 都會被捕獲

所以 我們捕獲到了 所有的 {{ 字母組合 }} 并在函數(shù)中 a代表原本的內(nèi)容 b代表 括號內(nèi) 被捕獲的字母內(nèi)容 c參數(shù)代表這個(gè)符號在字符串的下標(biāo)位置 簡單說 就是第幾個(gè)字符
我們運(yùn)行結(jié)果如下

Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
可以看到 我們兩次 輸出 分別 捕獲到了templateStr中的 name 和 age的使用
并再最后 將他們也都替換成了 *

而我們 abc三個(gè)參數(shù)的輸出 也是沒有任何問題
而且 我們還有一個(gè)d參數(shù)
我們將代碼改成

console.log(templateStr.replace(/\{\{(\w+)\}\}/g, function(a, b, c, d){
 console.log(a, b, c, d);
    return "*";
}));

Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
我們這兩次 輸出的d參數(shù) 都是字符串在沒有被替換時(shí)的內(nèi)容

當(dāng)然 你也不一定要一直用 abc這三個(gè)名字 這個(gè)行參本來名字你就可以順便取

其實(shí)目前來講 有用的直屬 前兩個(gè)參數(shù)
下面 我們就需要 將他這里 用到的字段 位置 替換成 data中字段的值
意思就是 例如 {{ name }} 我們就要想辦法 替換成 data.name 的值

我們可以將代碼改成這樣

 console.log(templateStr.replace(/\{\{(\w+)\}\}/g, function(pattern, name){
   return data[name];
}));

Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
因?yàn)?我們之前說過 第二個(gè)參數(shù) 拿到的是 捕獲到的 花括號中的內(nèi)容 那么 比如 {{ name }} 進(jìn)來
第二個(gè)參數(shù) 捕獲到的內(nèi)容就是 字符串的 “name” 那么 我們就可以 通過 data[“name”] 拿到data中的這個(gè)字段 age也是一樣的

運(yùn)行結(jié)果如下
Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
這里 我們就很順利的 將這個(gè)內(nèi)容 替換成了 data中的值

這就是一個(gè)非常簡單的 模板引擎基理 但 mustache的源碼不是這樣寫的
因?yàn)檫@個(gè)有點(diǎn)太基礎(chǔ)了 之后什么循環(huán)啊 甚至說循環(huán)嵌套的 這個(gè)肯定是搞不定的
但是 大體思路差不多 寫這個(gè) 只是讓大家對這個(gè)變量解析有個(gè)概念

好啦 既然邏輯已經(jīng)寫好了 我們也可以寫個(gè)弱功能版的 render函數(shù)啦
我們可以這樣寫

function render(template, data) {
    return template.replace(/\{\{(\w+)\}\}/g, function(pattern, name){
        return data[name];
    });
}

接受兩個(gè)參數(shù) 第一個(gè)template 一個(gè)頁面模板的字符串 data 操作數(shù)據(jù)的對象 和我們mustache.js中的 render 接的參數(shù)寫的是一樣的

好那我們試著用自己寫的這個(gè)弱化版的render
將內(nèi)容寫到頁面上

我們編寫頁面代碼如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id = "list"></div>
    
    <script>
        var templateStr = `<h1>我是一只{{name}},今年{{age}}歲啦</h1>`;
        var data = {
            name: "小貓貓",
            age: 2
        }

        function render(template, data) {
            return template.replace(/\{\{(\w+)\}\}/g, function(pattern, name){
                return data[name];
            });
        }
        document.getElementById('list').innerHTML = render(templateStr, data);
    </script>
</body>
</html>

運(yùn)行結(jié)果如下
Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式
功能是實(shí)現(xiàn)了 但是 這里還是要給大家潑一瓢冷水

因?yàn)?這個(gè)只是給大家建立一個(gè)具體的思路 但是 后面肯定不是這樣去實(shí)現(xiàn) 因?yàn)?這個(gè)只能實(shí)現(xiàn)變量轉(zhuǎn)換 字符串轉(zhuǎn)譯 但是 像什么 循環(huán)語句 等等比較復(fù)雜的東西 這個(gè)肯定就廢了文章來源地址http://www.zghlxwxcb.cn/news/detail-487647.html

到了這里,關(guān)于Web3簡述MetaMask并演示谷歌安裝MetaMask擴(kuò)展程序方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • MetaMask與Web3中智能合約調(diào)用(2)

    MetaMask與Web3中智能合約調(diào)用(2)

    智能合約交易區(qū)別于點(diǎn)對點(diǎn)交易,智能合約交易只需付費(fèi)給礦工費(fèi)用,也就是gas fee,是支付給礦工的手續(xù)費(fèi),當(dāng)我們在以太坊區(qū)塊鏈上進(jìn)行轉(zhuǎn)賬時(shí),礦工要把我們的交易打包并放上區(qū)塊鏈,才能使交易完成,在這過程中會消耗區(qū)塊鏈的運(yùn)算資源,所以要支付費(fèi)用 這個(gè)過程為

    2024年01月16日
    瀏覽(29)
  • 使用web3.js連接Metamask錢包并完成合約交互

    Web3.js是一個(gè)用于與以太坊網(wǎng)絡(luò)進(jìn)行交互的JavaScript庫。Metamask是一個(gè)以太坊錢包插件,可以在瀏覽器中創(chuàng)建和管理以太坊賬戶。本文將介紹如何使用web3.js庫連接Metamask錢包,并完成與智能合約的交互。 Web3.js是一個(gè)用于與以太坊網(wǎng)絡(luò)進(jìn)行交互的JavaScript庫。它提供了一些方法和功

    2024年03月16日
    瀏覽(97)
  • Web3在HTML中獲取 MetaMask 啟用的用戶列表

    Web3在HTML中獲取 MetaMask 啟用的用戶列表

    當(dāng)然 我們還是要先啟動ganache環(huán)境 然后 通過MetaMask 導(dǎo)入一些用戶 然后 我們需要在頁面中引入 web3.min.js 如果您還沒有這個(gè)文件 可以查看我的文章web3.js獲取導(dǎo)入 然后我訪問官網(wǎng) https://learnblockchain.cn/docs/web3.js/web3-eth.html#getchainid 打開后 先來到 web3.eth 下面 下面有一個(gè) getAccount

    2024年02月11日
    瀏覽(22)
  • MetaMask Mobile +Chrome DevTools 調(diào)試Web3應(yīng)用教程

    MetaMask Mobile +Chrome DevTools 調(diào)試Web3應(yīng)用教程

    注:本教程來源網(wǎng)絡(luò),有興趣的可以直接到這里查看。 寫好了WEB3應(yīng)用,在本地調(diào)試用得好好的,但是用錢包軟件訪問就報(bào)莫名的錯,但是又不知道是什么原因,排查的過程非常浪費(fèi)時(shí)間 。 因此在本地同一局域網(wǎng)進(jìn)行調(diào)試就非常有必要,本教程有下面幾個(gè)重點(diǎn),包含MetaMask

    2024年02月12日
    瀏覽(28)
  • 前端VUE使用web3調(diào)用小狐貍(metamask)和合約(ERC20)交互

    前端VUE使用web3調(diào)用小狐貍(metamask)和合約(ERC20)交互

    1.創(chuàng)建vue項(xiàng)目 2.安裝web3 npm install web3 3.項(xiàng)目web3 main.js 項(xiàng)目結(jié)構(gòu) 頁面代碼中引用web3,倒入ERC20代幣的abi 項(xiàng)目頁面 ? 調(diào)用小狐貍metamask演示 ? 項(xiàng)目任何難題,可以加入qq群:981921011 ? ? ?

    2024年02月15日
    瀏覽(29)
  • web3簡述

    Web3是指Web技術(shù)的第三個(gè)主要版本,是互聯(lián)網(wǎng)的下一代演進(jìn)。它的目標(biāo)是構(gòu)建一個(gè)去中心化的互聯(lián)網(wǎng),使用戶可以直接與去中心化應(yīng)用(DApps)進(jìn)行交互,而無需通過中心化的服務(wù)提供商。Web3的核心概念是區(qū)塊鏈技術(shù),它提供了一種去中心化的、可信任的基礎(chǔ)設(shè)施,使用戶可以

    2024年01月24日
    瀏覽(17)
  • 使用nodejs和web3js實(shí)現(xiàn)鏈接metamask錢包并實(shí)現(xiàn)合約交互

    在以太坊區(qū)塊鏈上,metamask錢包是一個(gè)非常常用的錢包,用以管理以太幣和其他以太坊資產(chǎn)。同時(shí),它也是一個(gè)重要的以太坊智能合約交互工具。在本文中,我們將介紹如何使用nodejs和web3js實(shí)現(xiàn)鏈接metamask錢包并實(shí)現(xiàn)合約交互。 在開始之前,首先需要安裝NodeJS和Web3JS。 NodeJS是

    2024年02月04日
    瀏覽(32)
  • 記錄分享vue3通過web3.js連接MetaMask的流程及簽名、驗(yàn)簽方法

    記錄分享vue3通過web3.js連接MetaMask的流程及簽名、驗(yàn)簽方法

    記錄下web3.js連接,希望對像我一樣的小白有幫助。廢話不多說,開整! 一、先在瀏覽器上面下載 小狐貍MetaMask插件,然后創(chuàng)建賬戶,創(chuàng)建成功之后默認(rèn)連接的是以太坊 Ethereum 主網(wǎng)絡(luò),如果有相關(guān)網(wǎng)絡(luò)的信息(如RPC URL和和鏈id等,可以自己添加,沒有就先不管)。 ?二、本地項(xiàng)

    2024年02月06日
    瀏覽(40)
  • web3簡述Dapp組成部分

    好啊 都說光說不練 會感覺很空啊 那 我們就來進(jìn)入真正的這個(gè)操作過程啊 區(qū)塊鏈這種東西 我們肯定是無法從零開始搭建的 我們在這里說 是通過 以太坊提供的公有鏈的應(yīng)用開發(fā)平臺來做的 就可以理解為 以太坊是一個(gè)大的公共平臺 人家給我們把地基搭好了 我們只需要在上面

    2024年02月09日
    瀏覽(23)
  • 使用nodejs和web3js來實(shí)現(xiàn)鏈接MetaMask錢包并取消風(fēng)險(xiǎn)代幣授權(quán)

    隨著區(qū)塊鏈技術(shù)的快速發(fā)展,數(shù)字貨幣資產(chǎn)在投資及交易市場中得到了廣泛的應(yīng)用。而在數(shù)字貨幣交易過程中,錢包是一個(gè)非常重要的環(huán)節(jié)。比如MetaMask就是一款非常流行的區(qū)塊鏈錢包,它可以讓用戶在瀏覽器中安全地管理自己的數(shù)字資產(chǎn)。 然而,在數(shù)字貨幣交易過程中也存

    2024年01月23日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包