摘要:的相關(guān)文章其實(shí)框架就是讓你使用起來簡單些關(guān)于路由其實(shí)用一個(gè)輕便的框架就可以了路由就是根據(jù)后面的路徑不同變換代碼前端路由由于其特殊性最常見表述為這樣的形式然后我們直接上使用代碼可以使你使用現(xiàn)在我們開始寫組件組件寫法定義組件使用組件
avalon2 的相關(guān)文章
https://segmentfault.com/blog/jslouvre
其實(shí)框架就是讓你使用起來簡單些
關(guān)于路由其實(shí)用一個(gè)輕便的框架就可以了
https://github.com/visionmedia/page.js
路由就是根據(jù)url后面的路徑不同變換代碼
前端路由由于其特殊性 最常見表述為這樣的形式
#!/contact/me
然后我們直接上page.js使用代碼
page.js 可以使你使用hashbang
現(xiàn)在我們開始寫組件
avalon2 組件寫法
https://segmentfault.com/a/1190000004949412
定義組件
avalon.component("ms-approute", { template: "", defaults: { }, soleSlot: "page" });
使用組件
indexaboutcontact
js
function deepFind(obj, path) { var paths = path.split(".") , current = obj , i; for (i = 0; i < paths.length; ++i) { if (current[paths[i]] == undefined) { return undefined; } else { current = current[paths[i]]; } } return current; } var Approute = function (options) { var lastRoute = ""; var lastRouteEle = {}; var ele = {}; function check(route) { var length = ele.target.children.length; for (var i = 0; i < length; i++) { (function (index) { var page = ele.target.children.item(index); if (page.dataset.route == route) { lastRoute = route; lastRouteEle = page; page.setAttribute("selected", ""); } })(i); } } function emit(newValue, oldValue) { lastRouteEle.removeAttribute("selected"); check(newValue); } return { emit: emit, config: { onInit: function (a) { console.log("onInit!!"); }, onReady: function (a) { console.log("onReady!!"); var self = this; ele = a; var route = deepFind(self, options.path); check(route); }, onViewChange: function (a) { console.log("onViewChange!!"); }, onDispose: function (a) { console.log("onDispose!!") } } } }; var approute = new Approute({ path: "route" }); var con = function () { return { $id: "test", route: "index", approuteconfig: approute.config } }; var vm = avalon.define(con()); vm.$watch("route", function (newValue, oldValue) { approute.emit(newValue, oldValue); });
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/86298.html
摘要:啟動(dòng)服務(wù),并打開新窗口可簡寫創(chuàng)建新組件可簡寫創(chuàng)建新服務(wù)創(chuàng)建路由模塊其他另外還有很多的命令提供,詳細(xì)可以查閱官方文檔命令。引入路由模塊導(dǎo)出路由模塊的指令這里需要添加一個(gè)數(shù)組,并傳入,導(dǎo)出讓路由器的相關(guān)指令可以在中的組件中使用。 本文目錄 一、項(xiàng)目起步 二、編寫路由組件 三、編寫頁面組件 1.編寫單一組件 2.模擬數(shù)據(jù) 3.編寫主從組件 四、編寫服務(wù) 1.為什么需要服務(wù) 2....
摘要:使用前端框架開發(fā)信息管理系統(tǒng)有三年了,最近半年花了些心血將這三年的積累凝聚起來,誕生了兩個(gè)開源項(xiàng)目和。,中文名安逸,是基于的端組件庫。有用于數(shù)據(jù)展示的組件用于數(shù)據(jù)提交的組件用于消息提示的與組件組件和用戶輸入組件等,并且還在不斷完善中。 使用 Avalon 前端框架開發(fā)信息管理系統(tǒng)有三年了,最近半年花了些心血將這三年的積累凝聚起來,誕生了兩個(gè)開源項(xiàng)目 ms-bus 和 ane。 ms-b...
摘要:要做到這一點(diǎn),有三個(gè)必不可少的步驟,分別是創(chuàng)建根路由模塊定義路由配置添加指令標(biāo)簽。下面的代碼以路由配置為參數(shù),通過調(diào)用方法來創(chuàng)建根路由模塊,并將其導(dǎo)入到應(yīng)用的根模塊中。 概述 路由所要解決的核心問題就是通過建立URL和頁面的對(duì)應(yīng)關(guān)系,使得不同的頁面可以用不同的URL來表示。 Angular路由的核心工作流程圖 showImg(https://segmentfault.com/img/b...
摘要:最近因項(xiàng)目進(jìn)展需求對(duì)現(xiàn)有項(xiàng)目進(jìn)行重構(gòu),由于目前項(xiàng)目還未實(shí)現(xiàn)真正意義上的前后端分離后續(xù)會(huì)循序重構(gòu)實(shí)現(xiàn),在時(shí)間緊產(chǎn)品循序迭代的情況下,想一次性實(shí)現(xiàn)前后端分離精力實(shí)在有限主要是前端開發(fā)人力不足。 最近因項(xiàng)目進(jìn)展需求對(duì)現(xiàn)有項(xiàng)目進(jìn)行重構(gòu),由于目前項(xiàng)目還未實(shí)現(xiàn)真正意義上的前后端分離(后續(xù)會(huì)循序重構(gòu)實(shí)現(xiàn)),在時(shí)間緊產(chǎn)品循序迭代的情況下,想一次性實(shí)現(xiàn)前后端分離精力實(shí)在有限(主要是前端開發(fā)人力不足)。所...
閱讀 1607·2021-09-30 09:47
閱讀 3611·2021-09-22 15:05
閱讀 2846·2021-08-30 09:44
閱讀 3627·2019-08-30 15:55
閱讀 1377·2019-08-30 13:08
閱讀 1333·2019-08-29 16:40
閱讀 557·2019-08-29 12:45
閱讀 1394·2019-08-29 11:25