最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

值得分享和收藏的xmlplus組件學(xué)習(xí)教程

 更新時(shí)間:2017年05月05日 11:50:26   作者:qudou  
值得分享和收藏的xmlplus組件學(xué)習(xí)教程,xmlplus是一個(gè)設(shè)計(jì)非常獨(dú)特 JavaScript 框架,用于快速開(kāi)發(fā)前后端項(xiàng)目,感興趣的小伙伴們可以參考一下

xmlplus 介紹

xmlplus 是一個(gè)設(shè)計(jì)非常獨(dú)特 JavaScript 框架,用于快速開(kāi)發(fā)前后端項(xiàng)目。

基于組件設(shè)計(jì)

在 xmlplus 中,組件是基本的構(gòu)造塊。評(píng)價(jià)組件設(shè)計(jì)好壞的一個(gè)重要標(biāo)準(zhǔn)是封裝度?;?xmlplus 設(shè)計(jì)的組件具有極高的封裝度。下面是一個(gè)簡(jiǎn)單的組件示例:

Widget: {
 css: "#widget{ color: red; }",
 xml: `<h1 id='widget'>default</h1>`,
 fun: function (sys, items, opts) {
  sys.widget.text("hello, world"); 
 }
}

注意,這個(gè)組件包含的樣式、XML 文檔以及函數(shù)項(xiàng)僅對(duì)該組件有效,其它組件對(duì)它是完全不可見(jiàn)的。這種組件的書(shū)寫(xiě)方式改變了傳統(tǒng)的將 CSS、JS 以及 HTML 置于不同文件的應(yīng)用書(shū)寫(xiě)模式,但它卻能使你在構(gòu)建應(yīng)用時(shí)更加得心應(yīng)手。

組件由命名空間組織?;趥鹘y(tǒng)目錄路徑的組件引用方式,讓組件的使用更為便捷。假設(shè)你已經(jīng)定義好一個(gè)位于命名空間 //ui 的 Calendar 組件,那么你可以在 HTML 頁(yè)面中這樣使用它:

<Calendar xmlns="http://ui"/>

至于如何定義組件,請(qǐng)參考官方文檔 http://www.xmlplus.cn/docs

友好的相容性

非侵入式的設(shè)計(jì),使得 xmlplus 可以與當(dāng)今幾乎所有的框架或者庫(kù)集成使用。

利用 xmlplus 出色的整合能力,你可以整合現(xiàn)有的庫(kù)或框架到你的項(xiàng)目中,以避免陷入重造輪子的困境。

下面是一個(gè)封裝 Bootstrap 按鈕組件的一個(gè)示例:

Button: {
 xml: `<button type='button' class='btn'/>`,
 fun: function (sys, items, opts) {
  this.addClass("btn-" + opts.type);
 }
}

經(jīng)由此封裝后,你可以像下面這樣非常簡(jiǎn)潔地使用它:

<Button type='default'>Default</Button>
<Button type='primary'>Primary</Button>
<Button type='success'>Success</Button>

一次學(xué)習(xí), 多端使用

xmlplus 獨(dú)特的設(shè)計(jì),使得它可以以相同的方式,設(shè)計(jì)基于瀏覽器端以及基于服務(wù)端的應(yīng)用。

在瀏覽器端,使用它可以高效地開(kāi)發(fā)單頁(yè)應(yīng)用。在服務(wù)端,你既可以用它來(lái)開(kāi)發(fā)服務(wù)應(yīng)用,還能用它開(kāi)發(fā)傳統(tǒng)網(wǎng)站。

下面是一個(gè)服務(wù)端的一個(gè)簡(jiǎn)單的 Sqlite 組件的封裝。

Sqlite: {
 fun: function (sys, items, opts) {
  var sqlite = require("sqlite3").verbose(),
  return new sqlite.Database("data.db");
 }
}

你可以像下這樣使用上面已經(jīng)定義好的 Sqlite 組件:

Example: {
 xml: `<Sqlite id='sqlite'/>`,
 fun: function (sys, items, opts) {
  let stmt = "SELECT * FROM users";
  items.sqlite.all(stmt, (err, rows) => console.log(rows));
 }
}

本框架支持在后臺(tái)直接序列化輸出 HTML 代碼,所以使用 xmlplus 開(kāi)發(fā)傳統(tǒng)網(wǎng)站是極其便利的。下面示例簡(jiǎn)單地演示了這一點(diǎn):

HttpServer: {
 xml: `<html>
    <body id='body'>default</body>
   </html>`
 fun: function (sys, items, opts) {
  let http = require("http");
  http.createServer((req, res) => { 
   sys.body.text("hello,world");
   res.setHeader("Content-Type", "text/html");
   res.end(this.serialize(true)); 
  }).listen(80); 
 }
}

通過(guò)示例,你可以發(fā)現(xiàn),在處理服務(wù)接受請(qǐng)求后,可以動(dòng)態(tài)改變 XML 的文檔結(jié)構(gòu),這一點(diǎn)使得 xmlplus 開(kāi)發(fā)傳統(tǒng)網(wǎng)站方式與 PHP、JSP 等腳本語(yǔ)言有著很大的不同。

另外,xmlplus 所包含的檢索通信、共享 以及 延遲實(shí)例化 等基本特性也是其獨(dú)有的,它們可以極其高效地輔助應(yīng)用的開(kāi)發(fā)。

xmlplus 學(xué)習(xí)指南
xmlplus 是一個(gè)開(kāi)源的框架,你可以訪(fǎng)問(wèn)官方網(wǎng)站:http://www.xmlplus.cn。官方網(wǎng)站包含詳細(xì)的入門(mén)教程,你可以從這里開(kāi)始。

另外 xmlplus 的源代碼托管于 github,你可以通過(guò)訪(fǎng)問(wèn)下面的地址來(lái)獲取相應(yīng)的資源:

https://github.com/qudou/xmlplus

如果你已經(jīng)學(xué)完了基礎(chǔ)教程,那么可以繼續(xù)學(xué)習(xí)本博寫(xiě)的 xmlplus 組件設(shè)計(jì)系列。此系列主要討論實(shí)際中組件的設(shè)計(jì)思路、方法與技巧等。

xmlplus 組件設(shè)計(jì)系列之一 - 圖標(biāo)(ICON)

xmlplus 組件設(shè)計(jì)系列之二 - 按鈕(Button)

xmlplus 組件設(shè)計(jì)系列之三 - 文本框(TextBox)

xmlplus 組件設(shè)計(jì)系列之四 - 列表(List)

xmlplus 組件設(shè)計(jì)系列之五 - 選項(xiàng)卡(Tabbar)

xmlplus 組件設(shè)計(jì)系列之六 - 下拉刷新(PullRefresh)

本系列文章基于 xmlplus 框架。如果你對(duì) xmlplus 沒(méi)有多少了解,可以訪(fǎng)問(wèn) www.xmlplus.cn。這里有詳盡的入門(mén)文檔可供參考。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

临澧县| 卫辉市| 凤山市| 厦门市| 铜川市| 云龙县| 丽江市| 阳新县| 临颍县| 商南县| 曲靖市| 松潘县| 塔河县| 大方县| 青河县| 石首市| 安丘市| 海门市| 陆丰市| 滦平县| 简阳市| 南皮县| 额尔古纳市| 临夏县| 靖西县| 台湾省| 镇原县| 沾益县| 四子王旗| 额济纳旗| 南溪县| 湟源县| 广丰县| 赣州市| 留坝县| 孟州市| 垫江县| 宁武县| 延津县| 丹阳市| 上饶市|