雜項 ----模板引擎
阿新 • • 發佈:2020-08-16
簡單使用:
1.匯入 <script src="template-web.js"></script>
2.提供需要替換的內容,在type選擇text/html,並把要替換的地方用{{}}括起來
<script type="text/html" id="tp1"> <div> <span>姓名:{{name}}</span> <span>年齡:{{age}}</span> </div> </script>
3.替換template方法中,第一個位置為模板編號,第二個為要替換的物件(如data是name:‘張三’)
1 <script> 2 var data={ 3 name : '張三', 4 age : 30 5 } 6 var html = template('tp1',data); 7 //在佈局中體現出來 8 document.getElementById('container').innerHTML=html 9 </script>View Code
其他語法:
1.@:
如果是 name : <b>'張三'</b>,即想通過b標籤加粗張三,就需要{{@name}},否則就會把b標籤顯示出來
{{if XXX}}內容{{/if}} 滿足顯示內容,也可以在中間加入{{else}}
{{if v1}}內容1{{else if v2}}內容2{{/if}} 如果滿足v1顯示內容1,如果滿足v2顯示內容2
3.迴圈:
data=[{name:'張三'},{name:'李四'}],
{{each targe}}
{{$index}}{{$value}}
{{/each}}
在需要迴圈的地方加,如:
{{each data}}
<div>
<span>姓名:{{$value.name}}</span>
{{/each}}
4.匯入自定義方法
1 <div>$imports.dataFormat(time)</div> #使用,要在template方法前使用 2 //如果方法在全域性變數下就可以直接使用,如果方法不在全域性變數下,需要匯入就像下面 3 4 template.defaults.imports.變數名 = 變數值; 5 $imports.變數名稱 6 7 function dateFormat(未格式化的原始時間){ 8 return '已經格式化好的當前時間' 9 } 10 11 template.defaults.imports.dateFormat = dateFormat; 12 <div>$imports.dataFormat(time)</div>
PS:
獲取ID時應該是 {{$value._id}} 記得加斜槓
為了防止表單自動提交應該return false
分類的批量刪除
上傳圖片的過程:
1 // 當管理員選擇檔案的時候 觸發事件(點選選擇按鈕鍵 input) 2 $('#feature').on('change', function () { 3 // 獲取到管理員選擇到的檔案 4 var file = this.files[0]; 5 // 建立formData物件 實現二進位制檔案上傳 6 var formData = new FormData(); 7 // 將管理員選擇到的檔案追加到formData物件中 8 formData.append('cover', file); 9 // 實現文章封面圖片上傳 10 11 $.ajax({ 12 type: 'post', 13 url: '/upload', --------------------圖片上傳是upload 14 data: formData, 15 // 告訴$.ajax方法不要處理data屬性對應的引數 16 processData: false, 17 // 告訴$.ajax方法不要設定引數型別 18 contentType: false, 19 success: function (response) { 20 console.log(response) 21 $('#thumbnail').val(response[0].cover); 22 } 23 }) 24 });