Example #1
0
export default function createRouter() {
  Vue.use(VueRouter)

  const router = new VueRouter({
    history: true
  })

  router.map(routes)

  router.redirect('*', '/')

  router.beforeEach(({to, next, redirect}) => {
    if (to.path === '/login') {
      return next()
    }

    const auth = rootRef.getAuth()
    if (auth) {
      return next()
    }

    return redirect('/login')    
  })

  return router
}
Example #2
0
function initVue() {

  // Debug Mode
  Vue.config.debug = true

  // Global Directives
  Vue.directive('tap-outside', VueTapOutside)

  // Global Components
  Vue.component('icon',icon)
  Vue.component('grid',grid)

  // Use Plugins
  Vue.use(VueRouter)
  Vue.use(VueTouch)


  /**
    VUE ROUTER CONFIGURATION
  */

  // Make new VueRouter Instance
  let router = new VueRouter()

  // Make it global
  global.router = router

  // Register Routes
  router.map(map)

  // Handle not found routes
  router.redirect({ '*' : '/' })

  // Make a new components
  let App = Vue.extend(app)

  // Mount The App
  router.start(App,'#app')

}
Example #3
0
export default function createRouter(Vue) {
  Vue.use(VueRouter)

  const router = new VueRouter({
    history: true,
    linkActiveClass: 'active'
  })

  router.map({
    '/': {
      component: Home
    },
    '/login': {
      component: Login
    }
  })
  router.redirect({
    '*': '/'
  })

  router.beforeEach(({to, next, redirect}) => {
    if (to.path === '/login') {
      return next()
    }
    else {
      isAuthed()
        .then((a) => {
          next()
        })
        .catch((e) => {
          console.log('e:', e)
          redirect('/login')
        })
    }
  })

  return router
}
Example #4
0
require.ensure(["vue", "vue-router"], function(require) {
	var Vue = require("vue");
	var Router = require("vue-router");

	//install router
	Vue.use(Router);


	var router = new Router();

	router.map({
		'/': {
			component: function(resolve){
				require(['./components/Index.vue'],resolve);
			}
		},
		'/list': {
			component: function(resolve) {
				require(['./components/List.vue'], resolve);
			}
		}
	})


	router.beforeEach(function() {
		window.scrollTo(0, 0);
	});

	//404页面
	router.redirect({
		'*': '/404'
	});

	router.start(App, '#app');

});
Example #5
0
import TimeEntries from './components/TimeEntries.vue'
import LogTime from './components/LogTime.vue'

import VueRouter from 'vue-router'
import VueResource from 'vue-resource'

Vue.use(VueResource)
Vue.use(VueRouter)

const router = new VueRouter()

router.map({
  '/home': {
    component: Home
  },
  '/time-entries': {
    component: TimeEntries,
    subRoutes: {
      '/log-time': {
        component: LogTime
      }
    }
  }
})

router.redirect({
  '*': '/hello'
})

router.start(App, '#app')
Example #6
0
    subRoutes: {
      '/users': {
        component: Users
      },
      '/settings': {
        component: Settings
      },
      '/blogs': {
        component: Blogs
      },
      '/posts': {
        component: Posts
      },
      '*': {
        component: Users
      }
    }
  },
  '/media': {
    component: Media
  }
})

router.redirect({
  '*': '/',
  '/admin': '/admin/users',
  '/auth': '/auth/login'
})

router.start(App, '#app')
Example #7
0
router.map({
		'/': {
			name:'home',
            component: index
        },
        '/storage':{
        	name:'storage',
        	component:storage
        },
        '/write': {
        	name:'write',
            component: write
        },
        '/edit/:id': {
        	name:'edit',
            component: write
        },
        'entry/:id':{
        	name:'entry',
        	component: entry
        }
    })

router.redirect({
  // 重定向任意未匹配路径到 /
  '*': '/'
})

router.start(App, 'app')
Example #8
0
    // Configure Redirects
    redirects(redirects) {
        this.router.redirect(redirects)
        this.routing = true

        return this
    }
Example #9
0
		subRoutes: {
			'/': {
				name: routerMap.tags.name,
				component: tagList
			},
			'/:tag': {
				name: routerMap.tag.name,
				component: tagList
			}
		}
	},
	// '/tags/:tag': {
	// 	name: routerMap.tag.name,
	// 	component: tags
	// },
	'/about': {
		name: routerMap.about.name,
		component: about
	},
	'/post/:id': {
		name: routerMap.articles.name,
		component: article
	}
});

router.redirect({
	'/archives': '/archives/1',
	'*': '/home/1'
});

export default router;
Example #10
0
import Vue from 'vue';
import app from './components/app.vue';
import appRoute from './routes.js';
import store from './vuex/store.js';
import VueRouter from 'vue-router';

// Registered plugin
Vue.use(VueRouter);
const router = new VueRouter();

Vue.config.debug = true;
Vue.config.devTools = true;

// Routes list
router.map(appRoute);
// 404 error redirect
router.redirect({
  '*': '/home'
});

router.start(app, 'app');
Example #11
0
Vue.use(VueRouter);
Vue.use(VueResource);

var Home = Vue.extend({
    template: "<h1>ddddddddd</h1>"
});

var router = new VueRouter();

router.map({
    "/main":{
        component:Main
    },
    '/home':{
        component: Home
    },
    '/plist':{
        component:PList
    },
    "/aboard/:pid":{
        component:ABoard
    }

});

router.redirect({
    '/':"/main"
});

router.start(App,"#wrapper");
Example #12
0
  '/posts':{
    component:PostsView
  },
  '/tags':{
    component: function (resolve) {
      require(['components/Tags/Tags.vue'], resolve)
    },
  },
  '/me':{
    component: function (resolve) {
      require(['components/Me/Me.vue'], resolve)
    },
  }
})
router.redirect({
  '*': '/posts'
})
router.beforeEach(function({from,to,next,redirect}){
  //console.log(store.state.token.token)
  if(true !== to.authPage){
    if(null === store.state.token.token) {
      redirect('login');
    }else{
      next();
    }
  }else{
    //login页
    if(null === store.state.token.token) {
      next();
    }else{
      if(undefined !== from.path){
Example #13
0
  root: '/simple'
})

router.map({
  '/': { component: UserGroupView },
  '/new-user': {
    component: UserProfileView,
    title: 'Create User' // https://github.com/okTurtles/group-income-simple/issues/45
  },
  '/user': { component: UserProfileView },
  '/user/:username': { component: UserProfileView },
  '/user-group': { component: UserGroupView },
  '/new-income': { component: NewIncomeView },
  '/pay-group': { component: PayGroupView },
  '/ejs-page': {
    component: { template: wrap(require('./views/test.ejs')) },
    title: 'EJS Test Page'
  }
})

router.beforeEach(function () {
  window.scrollTo(0, 0)
})

router.redirect({
  '*': '/' // TODO: make this a 404
})

var App = Vue.extend({})
router.start(App, 'html') // bind to html so we can change the title and head section
Example #14
0
//----------------------------初始化AJAX----------------------------

//----------------------------初始化路由----------------------------

Vue.use(VueRouter);

var router = new VueRouter();

routerConfig(router);

router.start(App, '#main');

//路由请求开始时调用
router.beforeEach(function () {

});

//路由请求结束后调用
router.afterEach(function () {
	
});

router.redirect({
  '*': '/index'
});

//----------------------------初始化路由----------------------------

Service.init(Vue);
Example #15
0
Vue.config.debug = true;

const router = new VueRouter({
  linkActiveClass: 'active',
});
const pqc = Vue.extend(App);

router.map({
  '/base': {
    component: Base,
  },
  '/middle': {
    component: Middle,
  },
  '/high': {
    component: High,
  },
  '/cli': {
    component: Cli,
  },
  '/tools': {
    component: Tools,
  },
});

router.redirect({
  '*': '/base',
});

router.start(pqc, '.app');
Example #16
0
var Router = require('vue-router')
var routes = require('./routes')
var config = require('./config')
var util = require('./util')

// install router
Vue.use(Router)

// create router
var router = new Router({
  linkActiveClass: config.get('route.linkActiveClass', 'v-link-active')
})

router.map(routes)

router.redirect(config.get('route.redirect', {}))

router.beforeEach(function (transition) {
  var auth = transition.to.auth
  if (auth === false) {
    transition.next()
  } else {
    if (true) {
      transition.next()
    } else {
      transition.to.router.go('/login')
    }
  }
})

router.afterEach(function (transition) {
Example #17
0
import Vue from 'vue'
import Router from 'vue-router'
import { sync } from 'vuex-router-sync'
import store from './vuex/store'
import configRouter from './router'
import App from './components/App.vue'

Vue.use(Router)

// routing
const router = new Router({
  history: false,
  saveScrollPosition: true,
  suppressTransitionError: true
})

configRouter(router)

sync(store, router)

router.redirect({
	'/': '/app/home',
	'*': '/app/home'
})

router.start(Vue.extend(App), '#app')
window.router = router
Example #18
0
    component: Login
  },
  '/dashboard': {
    component: Dashboard
  },
  '/counter': {
    component: Counter
  }
})

router.beforeEach(function() {
  window.scrollTo(0, 0)
})

router.redirect({
  '*': '/login'
})

sync(store, router)
router.start(App, 'body')

Vue.config.debug = true

Vue.http.interceptors.push({
  request: function(request) {
  	Vue.http.headers.common['Authorization'] = 'JWT' + sessionStorage.getItem('token')
    return request
  },
  response: function(response) {
    if (response.status === 401) {
      router.go('/login')
Example #19
0
  initRoutes(){
    var router = new Router();

    router.map({
      //Sign In
      '/signIn': {
        name: 'signIn',
        component: SignInPage,
        auth: false,
      },
      //Sign Up
      '/signUp': {
        name: 'signUp',
        component: SignUpPage,
        auth: false,
      },
      '/setters': {
        name: 'setters',
        component: SettersPage,
        auth: "admin"
      },
      '/setters/:id': {
        name: 'setter',
        component: SettersPage,
        auth: "admin"
      },
      '/users/:id': {
        name: 'profile',
        component: UserPage,
        auth: "admin"
      },
      '/walls': {
        name: 'walls',
        component: WallsPage,
        auth: "setter"
      },
      '/walls/:id': {
        name: 'wall',
        component: WallPage,
        auth: "setter"
      },
      '/notifications': {
        name: 'notifications',
        component: NotificationsPage,
        auth: "admin"
      },
      '/gym': {
        name: 'gym',
        component: GymPage,
        auth: "setter"
      }

    });

    router.beforeEach(function(transition){
      if(transition.to.auth && !UserModel.firebaseUser){
        transition.redirect("/signIn");
      } else if(!transition.to.auth && UserModel.firebaseUser){
        transition.redirect("/walls");
      } else {
        Notifications.notify('Router.beforeTransition', transition);
        transition.next();
      }
    });

    router.afterEach(function(transition){
      Notifications.notify('Router.afterTransition', transition);
    });


    router.redirect({
      '*': '/walls'
    });


    return router;
  }
Example #20
0
import Book from './components/Book.vue'

// install api
Vue.use(VueResource)
Vue.http.options.emulateJSON = true

// install scroll
Vue.use(infiniteScroll)

// install router
Vue.use(Router)

// routing
var router = new Router()

router.map({
  '/hello': {
    component: Hello
  },
  '/editor': {
    component: Editor
  },
  '/book/:link': {
    component: Book
  }
})
router.redirect({
  '*': '/book/index.xhtml'
})
router.start(App, '#app')
Example #21
0
			'/user': {
				name: 'userIndex',
				component (resolve) {
					require(['./views/user-index'], resolve);
				}
			},
			'/event': {
				name: 'eventIndex',
				component(resolve){
					require(['./views/event-index'], resolve);
				}
			}
		}
	},
	'/borrow/list': {
		name: 'borrowList',
		component (resolve){
			require(['./views/borrow-list'], resolve);
		}
	}

});

router.map(routerConfig);

router.redirect({
	'/': '/borrow'
});

export {router}
Example #22
0
var Vue = require('vue');
var VueRouter = require('vue-router');
var VueResource = require('vue-resource');

Vue.use(VueRouter); // 路由
Vue.use(VueResource); // ajax这块

var router = new VueRouter({
  transitionOnLoad: true
});
router.map(require('./routes'));
router.redirect({ '*': require('setting').defaultRoute });// 默认路由

router.beforeEach(function(transition) {
  // transition.to.path;// 当前路由
  // show loading
  console.info('show loading');
  transition.next();
}).afterEach(function(transition) {
  console.info('hide loading');
});


// 多语言
var setting = require('setting');
var otherLans = setting.language.others;
otherLans.forEach(function (lan) {
  var languageData = JSON.stringify(require('json!../language/' + lan + '.json'));
  localStorage.setItem('lan-' + lan, languageData);
});
Example #23
0
  },
  '/verify': {
      component: Verify
  },
  '/v': {
      name: 'verify',
      component: Verify
  },
  '/v/:id': {
      name: 'verify-id',
      component: Verify
  },
  '/debug': {
      name: 'debug',
      component: Debug
  },
  '/d': {
      component: Debug
  },
})

router.beforeEach(function () {
  window.scrollTo(0, 0)
})

router.redirect({
  '*': '/send'
})

router.start(App, '#app')
Example #24
0
import Vue from 'vue'
import App from './App'
import Home from './components/Home.vue'

import VueRouter from 'vue-router'
import VueResource from 'vue-resource'

Vue.use(VueResource)
Vue.use(VueRouter)

const router = new VueRouter()

// 路由map
router.map({
  '/Home': {
    component: Home
  }
})

router.redirect({
  '*': '/Home'
})

router.start(App, '#app')

Example #25
0
})

router.map({
  '/': {
    component: StreamList
  },
  '/about': {
    component: About
  },
  'settings': {
    component: Settings
  },
  '/followed': {
    component: Followed
  },
  '/search': {
    component: Search
  },
  '/:channel': {
    component: Stream
  }
})

// Redirect to the home route if any routes are unmatched
router.redirect({
  '*': '/'
})

// Start the app on the #app div
router.start(App, 'app')
Example #26
0
import Vue from 'vue'
import VueRouter from 'vue-router'
import App from './App.vue'
import Vines from './components/Vines.vue'
import Project from './components/Project.vue'

Vue.use(VueRouter)

const router = new VueRouter()

router.map({
  '/projects/': {
    component: Vines
  },
  '/project/:id': {
    component: Project
  }
})

router.redirect({
  '/': '/projects'
})

router.beforeEach(function (transition) {
  window.scrollTo(0, 0)
  transition.next()
})

router.start(App, '#container')
Example #27
0
      '/datepicker': {
        name: 'Datepicker',
        component: lazyLoading('./components/pages/UI/Datepicker')
      },
      '/sliders': {
        name: 'Sliders',
        component: lazyLoading('./components/pages/UI/Sliders')
      },
      '/switch': {
        name: 'Switch',
        component: lazyLoading('./components/pages/UI/Switch')
      }
    }
  },
  '/tables/basic': {
    name: 'BasicTables',
    component: lazyLoading('./components/pages/Tables/Basic')
  },
  '/tables/handsontable': {
    name: 'Handsontable',
    component: lazyLoading('./components/pages/Tables/Handsontable')
  }
})

router.redirect({
  '/ui': '/ui/typography',
  '*': '/dashboard'
})

router.start(App, 'app')
Example #28
0
						state.appInfo,
						story,
						format,
						['debug'],
						this.$route.params.passageId
					));
				});
			}
		}
	}
});

/* By default, show the story list. */

TwineRouter.redirect({
	'*': '/stories'
});

TwineRouter.beforeEach(transition => {
	/*
	If we are moving from an edit view to a list view, give the list view the
	story that we were previously editing, so that it can display a zooming
	transition back to the story.
	*/

	if (transition.from.path && transition.to.path === '/stories') {
		const editingId =
			transition.from.path.match('^/stories/([^\/]+)$');

		if (editingId) {
			transition.to.params.previouslyEditing = editingId[1];
Example #29
0
// vueXHR ajax 异步请求插件
import VueResource from 'vue-resource'

Vue.use(VueResource)
Vue.use(VueRouter)

// 实例路由
const router  = new VueRouter();

// 映射路由
router.map({
  '/home':{
    component:Home
  },
  '/time-entries':{
    component:TimeEntries,
    subRoutes:{
      '/log-time':{
        component:LogTime
      }
    }
  }
})

// 路由由当前路径跳转到指定路径
router.redirect({
  '/':'/home'
})
// 路由器的运行需要一个根组件,router.start(App, '#app') 表示router会创建一个App实例,并且挂载到#app元素。
router.start(App, '#app')
Example #30
0
import Vue from 'vue'
import Router from 'vue-router'

// Install router
Vue.use(Router)

// Routing
var router = new Router()

router.map({
  '/amazeui': {
    component: require('./amazeui/docs.vue')
  },
  '/plasmid': {
    component: require('./plasmid/docs.vue')
  },
  '/status-progressbar': {
    component: require('./status-progressbar/docs.vue')
  },
  '/sunburst': {
    component: require('./sunburst/docs.vue')
  }
})

router.redirect({
  '*': '/amazeui'
})

router.start(require('./docs.vue'), '#app')