美文网首页JavaScript 进阶营
VUE进阶笔记(4) - (vue-router)+( expr

VUE进阶笔记(4) - (vue-router)+( expr

作者: woow_wu7 | 来源:发表于2017-09-01 18:28 被阅读155次

(一)

(1) vue-router简单使用

官网:https://router.vuejs.org/zh-cn/essentials/getting-started.html


main.js


// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.

import Vue from 'vue';
import App from './App';
import Goods from './components/tab/goos.vue';
import Ratings from './components/tab/ratings.vue';
import Seller from './components/tab/seller.vue';

import Router from 'vue-router';

Vue.config.productionTip = false;

/* eslint-disable no-new */

Vue.use(Router);

const routes = [
  { path: '/goods', component: Goods },
  { path: '/ratings', component: Ratings },
  { path: '/seller', component: Seller }
];

const router = new Router({
  routes
});

new Vue({
  el: '#app1',
  router,
  template: '<App/>',
  components: { App, Goods, Ratings, Seller }
}).$mount('#app2');

----------------------------------------------------------------------------

app.vue


<template>
  <div id="app2">
    <Header1></Header1>

    <div class="tab">

      <div class="tab-item">
        <router-link to="/goods">商品</router-link>
      </div>

      <div class="tab-item">
        <router-link to="/ratings">评论</router-link>
      </div>

      <div class="tab-item">
        <router-link to="/seller">商家</router-link>
      </div>

    </div>

    <router-view></router-view>

  </div>
</template>

<script type="text/ecmascript-6">
  import Header1 from './components/header/header.vue';

  export default {
    components: {
      Header1
    }
  };

</script>

<style lang="stylus" rel="stylesheet/stylus">
  #app2
    .tab
      display: flex
      width: 100%
      height: 40px
      line-height: 40px
      .tab-item
        flex: 1
        text-align: center
</style>
---------------------------------------------------------------------

index.html

<!DOCTYPE html>
<html lang="zh-cn">
  <head>
    <meta charset="utf-8">
    <title>sell</title>
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">

    <link rel="stylesheet" href="static/css/reset.css">
  </head>
  <body>
    <div id="app1"></div>
    <!-- built files will be auto injected -->
  </body>
</html>

(2) 选择默认路由:

router.push('/路由路径') 即

const router = new Router({     //const router
  routes
});

router.push('/路由路径');

(3) 选择项高亮属性: router-link-active

(4) 修改点击时的class的属性:( linkActiveClass )

const router = new Router({
    routes,
    linkActiveClass: 'active'   //原来的是router-lick-active
});

(二)

express-router

var express = require('express')

var app = express()
appData = require('../data.json');

var seller = appData.seller;
var goods = appData.goods;
var ratings = appData.ratings;


var apiRoutes = express.Router();


apiRoutes.get('/seller', function( req, res) {
  res.json({
    errno:0,
    data:seller
  });
});

apiRoutes.get('/goods', function( req, res) {
  res.json({
    errno: 0,
    data: goods
  });
});

apiRoutes.get('/ratings', function( req, res) {
  res.json({
    errno: 0,
    data: ratings
  });
});

app.use('/api',apiRoutes);

相关文章

网友评论

    本文标题:VUE进阶笔记(4) - (vue-router)+( expr

    本文链接:https://www.haomeiwen.com/subject/kqpkjxtx.html