国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Omi v1.0.2發(fā)布正式支持傳遞javascript表達式

2024-05-06 15:19:33
字體:
供稿:網(wǎng)友

寫在前面

Omi框架可以通過在組件上聲明 data-* 把屬性傳遞給子節(jié)點。

Omi從設(shè)計之初,就是往標(biāo)準(zhǔn)的DOM標(biāo)簽的標(biāo)準(zhǔn)傳遞方式靠齊。比如:

下劃線自動轉(zhuǎn)駝峰, data-page-index傳到子組件就變成this.data.pageIndex data-xx 傳遞到子節(jié)點全都變成字符串,如data-page-index="1"到子節(jié)點中this.data.pageIndex就是字符串"1"

這樣會有什么局限性和問題?如:

無法傳遞JSON 無法傳遞number類型 無法傳遞bool類型

那么支持傳遞javascript表達式就能解決這些痛點。

廢話不多說,來看神器的冒號。

冒號標(biāo)記

看下面例子:

import Hello from 'hello.js'Omi.makeHTML('Hello', Hello);class App extends Omi.Component { render() { return ` <div> <Hello :data-user="{ name : 'Dntzhang', favorite : 'Omi' }" /> </div> ` }}Omi.render(new App(),"#container")

在data-user前面加上冒號即:data-user,就代表傳遞的是js 表達式,夠方便吧。

然后在Hello組件內(nèi)就可以直接使用。

class Hello extends Omi.Component { render() { return ` <div> <h1>{{user.name}} love {{user.favorite}}.</h1> </div> ` }}

你也可以在hello組件內(nèi)打印出 this.data.user 試試。

傳遞其他類型

上面的例子展示了傳遞JSON,其他類型也支持。比如:

<Hello :data-age="18" /> <Hello :data-xxx="1+1*2/3" /> <Hello :data-is-girl="false" /> <Hello :data-array-test="[1,2,3]" />

復(fù)雜類型

最后給大家看個稍微一丁點復(fù)雜的案例:

class Hello extends Omi.Component { handleClick(evt){ alert( this.data.arrayTest[0].name) } render() { return ` <ul> {{#arrayTest}} <li onclick="handleClick">{{name}}</li> {{/arrayTest}} </ul> `; }}Omi.makeHTML('Hello', Hello);class App extends Omi.Component { render() { return ` <div> <Hello :data-array-test="[{name:'dntzhang'},{name:'omi'},{name:'AlloyTeam'}]" /> </div> `; }}Omi.render(new App(),"#container");

當(dāng)然,在子組件中,你也可以不使用 mustache.js模板引擎的語法去遍歷,使用ES6+的姿勢去遍歷。

class Hello extends Omi.Component { render() { return ` <ul> ${this.data.arrayTest.map(item => `<li>${item.name}</li>` ).join('')} </ul> `; }}

這也是為什么omi提供了兩個版本,omi.js和omi.lite.js的原因。omi.lite.js不包含mustache.js模板引擎。

以上所述是小編給大家介紹的Omi v1.0.2發(fā)布正式支持傳遞javascript表達式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對錯新站長站網(wǎng)站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 遂溪县| 疏勒县| 贵州省| 保靖县| 金华市| 永平县| 原阳县| 高清| 舟山市| 容城县| 丰县| 德清县| 璧山县| 威宁| 三穗县| 叙永县| 墨竹工卡县| 镇雄县| 孝昌县| 乌拉特前旗| 云浮市| 穆棱市| 周至县| 故城县| 中牟县| 类乌齐县| 迁西县| 莆田市| 奉节县| 海南省| 大渡口区| 吉隆县| 成都市| 泗洪县| 衡水市| 钦州市| 兰州市| 宁夏| 上杭县| 梓潼县| 西华县|