>웹 프론트엔드 >JS 튜토리얼 >vue-router를 사용하여 vue-cli에서 하단 탐색 모음 만들기(자세한 튜토리얼)

vue-router를 사용하여 vue-cli에서 하단 탐색 모음 만들기(자세한 튜토리얼)

亚连
亚连원래의
2018-06-02 17:38:204419검색

이 글에서는 vue-cli vue-router를 기반으로 한 하단 네비게이션 바 모바일 프론트엔드 프로젝트를 주로 소개합니다. 이 프로젝트는 주로 Flex 레이아웃과 뷰포트 관련 지식을 활용하여 각 터미널 화면에 적응하는 목적을 달성했습니다. 필요한 친구는

vue.js를 참조하세요. 함정을 피하는 방법을 배우는 첫 번째 단계

1. 먼저 vue-cli 스캐폴딩을 설치하세요

자세한 내용은 Vue의 길에서 다루지 않겠습니다. 함정 등반하기 (1) - vue-cli 빌드 프로젝트 사용

2. 프로젝트 프리젠테이션 효과

프로젝트 프리젠테이션 URL: www.zhoupeng520.cn/index.html

이 프로젝트는 주로 Flex 레이아웃과 뷰포트를 사용합니다. 다양한 단말에 적용한 관련 지식 화면의 목적

3. 프로젝트의 메인 디렉토리

4 메인 코드는 다음과 같습니다

(1) App.vue

<template>
 <p id="app">
 <router-view class="view"></router-view>
 <p class="nav">
  <router-link class="nav-item" to="/langren">狼人杀</router-link>
  <router-link class="nav-item" to="/sanguo">三国杀</router-link>
  <router-link class="nav-item" to="/yingxiong">英雄杀</router-link>
 </p>
 </p>
</template>
<script>
</script>
<style>
 #app{
 height: 100%;
 display: flex;
 flex-direction: column;
 flex: 1;
 }
 .nav{
 height: 80px;
 line-height: 80px;
 display: flex;
 text-align: center;
 }
 .nav-item{
 flex: 1;
 text-decoration: none;
 }
 .nav-item:link,.nav-item:visited{
 background-color: white;
 color: black;
 }
 .nav-item:hover,.nav-item:active{
 color: white;
 background-color: #C8C6C6;
 }
</style>

(2) 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 &#39;vue&#39;;
import VueRouter from &#39;vue-router&#39;;
import router from &#39;./router&#39;;
import App from &#39;./App&#39;;
Vue.config.productionTip = false;
Vue.use(VueRouter);
/* eslint-disable no-new */
new Vue({
 el: &#39;#app&#39;,
 router,
 template: &#39;</App>&#39;,
 render: h => h(App)
});

(3) index.js //라우팅 구성입니다

이것은 main.js에 직접 작성하거나 저처럼 main.js에 도입할 수 있습니다

import Vue from &#39;vue&#39;;
import VueRouter from &#39;vue-router&#39;;
Vue.use(VueRouter);

const router = new VueRouter({
 routes: [{
  path: &#39;/langren&#39;,
  component: require(&#39;../components/vue/langren.vue&#39;)
 }, {
  path: &#39;/sanguo&#39;,
  component: require(&#39;../components/vue/sanguo.vue&#39;)
 }, {
  path: &#39;/yingxiong&#39;,
  component: require(&#39;../components/vue/yingxiong.vue&#39;)
 }, {
  path: &#39;/&#39;,
  component: require(&#39;../components/content/content.vue&#39;)
 }]
});
export default router;

routers.js를 직접 작성하여 src 디렉토리에 넣을 수도 있습니다

(4)router.js

import langren from &#39;./components/vue/langren.vue&#39;;
import sanguo from &#39;./components/vue/sanguo.vue&#39;;
import yingxiong from &#39;./components/vue/yingxiong.vue&#39;;
const routers = [
 {
  path: &#39;/langren&#39;,
  component: langren
 },
 {
  path: &#39;/sanguo&#39;,
  component: sanguo
 },
 {
  path: &#39;/yingxiong&#39;,
  component: yingxiong
 }
];
export default routers;

(5)content.vue

<template>
 <p class="content"><p>我是content!</p></p>
</template>
<script type="text/ecmascript-6">
 export default {};
</script>
<style lang="stylus" rel="stylesheet/stylus">
 .content
  height:100%
  background:blue
  flex:1
  display:flex;
  justify-content:center
  align-items:center
</style>

langren.vue / sanguo.vue / yingxiong.vue 코드는 이것과 동일하며, 색상과 p의 필드가 변경되었습니다.

메인 코드는 여기까지입니다.

5. 또한 발생한 주요 오류 및 해결책을 적습니다.

(1) es6 문법에 사용되므로 일부 문법 규칙을 따라야 하므로 일부 코드에는 끝에 빈 줄이 추가됩니다. 세미콜론을 추가해야 하고, 공백을 추가해야 하고, 오류에 따라 변경해야 합니다.

(2) semi//indent//no-tabs 오류, .eslintrc.js의 코드를 다음과 같이 변경하고, 주로 마지막 몇 줄을 추가합니다. .

// http://eslint.org/docs/user-guide/configuring
module.exports = {
 root: true,
 parser: &#39;babel-eslint&#39;,
 parserOptions: {
 sourceType: &#39;module&#39;
 },
 env: {
 browser: true,
 },
 // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
 extends: &#39;standard&#39;,
 // required to lint *.vue files
 plugins: [
 &#39;html&#39;
 ],
 // add your custom rules here
 &#39;rules&#39;: {
 // allow paren-less arrow functions
 &#39;arrow-parens&#39;: 0,
 // allow async-await
 &#39;generator-star-spacing&#39;: 0,
 // allow debugger during development
 &#39;no-debugger&#39;: process.env.NODE_ENV === &#39;production&#39; ? 2 : 0,
 &#39;semi&#39;: [&#39;error&#39;, &#39;always&#39;],
 &#39;indent&#39;: 0,
 &#39;space-before-function-paren&#39;: 0,
 "no-tabs":"off"
 }
}

위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

Ajax를 통한 Servlet3.0과 순수 자바스크립트 간의 상호 작용 사례에 대한 자세한 설명

노드 요소를 jQuery로 대체하는 방법

Angular CLI를 사용하여 Angular 5 프로젝트 튜토리얼 생성 자세한 설명

위 내용은 vue-router를 사용하여 vue-cli에서 하단 탐색 모음 만들기(자세한 튜토리얼)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.