相信用過vue框架或者是簡單了解過vue的人都知道模板引擎這個東西,大致就是**復用資料和頁面分離這兩個概念 這裡就不多說概念的東西了 很多東西還是直接上** 自己看懂了意會了也就明白了
1丶模板引擎丶模板引擎~~ 很簡單, 首先你需要乙個模板
首先我們看上面這段**, 你需要明白 此時 這個div(.box)容器並沒有載入進頁面裡面 而對於 你有沒有很熟悉 是不是很像vue裡面的 } 這個形式 我們的目的很相似 也是用後面分離出來的name變數something變數去替換頁面中的和 具體怎麼做我們繼續往下
2丶資料
//資料
let data =
3丶獲取模板
//獲取模板
let script = document.getelementsbytagname('script')[0];
let tamplate = script.innerhtml;
主要就是將我們的模板當成字串去處理 替換裡面的變數 這裡我們將這個處理過程封裝成乙個函式
4丶處理函式
function change(data,str)/g,function(a,b))
return newstr
}
引數 資料 和 需要被操作的字串 這個函式的主要功能就是將字串裡的變數替換成我們預先準備好的資料(或者你也可以替換成從後台獲取到的資料) 只是我們這裡並沒有加資料監聽所以頁面並不會實時的更新
5丶最後 載入
document.body.innerhtml = change(data,tamplate)
我們渲染的就是被處理過的字串 這樣你在頁面的任何地方去載入這個模板都是一樣的效果
6丶總結思路
如果還是不明白的可以看這裡
首先自寫乙個模板 裝進script標籤 通過js獲取 將標籤等元素當成字串去處理 使用replace方法利用正則和預先設定的資料去替換裡面的你自己定好的模板形式(如:) 最後使用body.innerhtml載入即可
模板引擎原理
1 模板概念 通常是指嵌入某種動態程式語言 的文字,資料和模板通過某種形式的結合可以變化出不同的結果,模板通常用來定義顯示的形式,能夠使資料展示更加豐富,而且容易維護 2 模板的好處 1 簡化了html書寫 2 通過程式設計元素 比如迴圈和條件分支 對資料的展現更具有控制力 3 分離資料與展現,使得...
模板引擎的實現原理
模板引擎是通過字串拼接得到的 let template hello name let template hello name 字串是通過new function執行的 let name world let template let str hello name return str let fn n...
php模板引擎原理
訪問php檔案,php檔案會去載入模板引擎,通過模板引擎去載入模板然後替換模板裡面的變數 然後生成乙個編譯檔案 最後將該編譯檔案匯入 訪問的php檔案中輸出 第二次訪問的時候 如果 快取檔案存在或者沒有被改動則直接 匯入快取檔案 輸出 否則重新編譯 自定義的乙個模板引擎 mytpl.class.ph...