vue.js单页面应用实例的简单实现


Posted in Javascript onApril 10, 2017

一:npm的安装

由于新版的node.js已经集成了npm的环境,所以只需去官网下载node.js并安装,安装完成后使用cmd检测是否成功。

测试node的版本号:node -v

测试npm的版本号:npm -v

vue.js单页面应用实例的简单实现 

 以上提示代表安装成功

二:vue.js环境搭建

1、首先安装淘宝的npm镜像:npm install -g cnpm --registry=https://registry.npm.taobao.org

2、安装vue.js环境::cnpm install -g vue-cli

3、测试vue的安装:vue

三:vue.js项目的建立

新建一个名为pt的vue项目:在F盘创建一个名为pt的文件夹:执行:cd f:\ vue init webpack pt

接下来会依次出现以下的操作

vue.js单页面应用实例的简单实现

注:Use ESlint to lint your code-是否使用ESlint(最后选否,否则不熟悉这种严格的方式,会被坑惨,没空格会报错,多空格也会报错)

vue项目的启动步骤:(1)cd pt (2)npm install (3)npm run dev

最终的目录结构:

vue.js单页面应用实例的简单实现

四:创建一个vue实例

main.js:应用入口文件

App.js:初始化组件

例:我们要实现如下效果的一个网站

vue.js单页面应用实例的简单实现

有四个模块:首页、公司介绍、招贤纳士、易点咨询。

项目的思维导向图:

vue.js单页面应用实例的简单实现

1、配置入口文件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'
// 引入router路由
import Router from 'vue-router'
// 引入项目的四个模块组件
import introduce from './components/introduce'
import home from './components/home'
import employment from './components/employment'
import consult from './components/consult'
// 使用router
Vue.use(Router)
// 定义路由
var routes = [{
 path: '/home',
 component: home
}, {
 path: '/introduce',
 component: introduce
}, {
 path: '/employment',
 component: employment
}, {
 path: '/consult',
 component: consult 
}]
// 实例化路由
var vueRouter = new Router({
 routes
})
// 创建和挂载根实例
new Vue({
 el: '#app',
 router: vueRouter,
 template: '<App></App>',
 components: { App }
})

2、初始化组件App.vue开发

<template>
 <div id="app">
  <div class="nav-top">
    <!-- 引入公用的头部 header组件 -->
     <v-header></v-header>
  </div>
  <div class="banner">
  </div>
  <div class="contianer">
   <!-- 路由中的几个组件在这里被渲染,默认被渲染的为第一个组件,也就是home组件 -->
   <router-view></router-view>
  </div>
 </div>
</template>
<style>
#app {
 font-family: 'Avenir', Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
}
.nav-top {
 position: absolute;
 top: 0;
 left: 50%;
 margin-left: -600px;
 z-index: 99;
}
.banner{
 width: 100%;
 height: 370px;
 overflow: hidden;
 background: url("components/banner.jpg");
 background-repeat: no-repeat;
}
</style>
<script>
//引入header组件
import header from './components/header.vue'
//输出header组件
export default{
 components: {
  'v-header': header
 }
}
</script>

3、创建公用头部组件

<template>
 <div class="header">
  <div class="header-wrapper">
   <div class="logo">
    <a href="/home" rel="external nofollow" ><img src="../assets/ysh.png" alt width="210"></a>
   </div>
   <ul class="nav">
    <li><router-link to="/home">首页</router-link></li>
    <li><router-link to="/introduce">公司介绍</router-link></li>
    <li><router-link to="/employment">招贤纳士</router-link></li>
    <li><router-link to="/consult">易点咨询</router-link></li>
   </ul> 
  </div> 
 </div>
</template>
<style>
.header{
 width:1200px;
 height:100px;
 margin:0 auto;
 color:#fff;
}
.header-wrapper{
 width:1200px;
 height:100px;
}
.logo{
 width:210px;
 height:100px;
 float:left;
}
.nav{
 width:700px;
 height:100px;
 font-size:15px;
 float:right;
}
.nav li{
 float:left;
 margin-right:30px;
 height:34px;
 line-height:34px;
 overflow:hidden;
 margin-top:34px;
}
.nav li:last-child{
 margin-right:0;
}
.nav a{
 display:inline-block;
 padding:0 13px;
 color:#fff;
 border-radius:15px;
}
.nav a.router-link-active{
 background:#c10514;
}
</style>

4、创建其他组件

需注意模板文件都只能有一个根元素。

<template>
<div class="intro">
公司介绍
</div>
<div>
zx
</div>
</template>
<style>
.intro{
  font-size:20px;
  color:#000;
  margin:20px auto;
}
</style>

像这种情况会报错。

正确的为:

<template>
  <div class="intro">
    公司介绍
  </div>
</template>
<style>
.intro{
  font-size:20px;
  color:#000;
  margin:20px auto;
}
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用 JavaScript 迁移目录
Dec 18 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
Apr 07 Javascript
网页中返回顶部代码(多种方法)另附注释说明
Apr 24 Javascript
js 判断计算字符串长度/判断空的简单方法
Aug 05 Javascript
jquery快捷动态绑定键盘事件的操作函数代码
Oct 17 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
Apr 06 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
Nov 29 Javascript
浅析JavaScript中var that=this
Feb 17 Javascript
基于jQuery封装的分页组件
Jun 26 jQuery
Vue 将后台传过来的带html字段的字符串转换为 HTML
Mar 29 Javascript
JavaScript 实现下雪特效的示例代码
Sep 09 Javascript
Vue如何跨组件传递Slot的实现
Dec 14 Vue.js
javascript内存分配原理实例分析
Apr 10 #Javascript
移动端触屏幻灯片图片切换插件idangerous swiper.js
Apr 10 #Javascript
Angular中ng-bind和ng-model的区别实例详解
Apr 10 #Javascript
javascript深拷贝的原理与实现方法分析
Apr 10 #Javascript
Vue2递归组件实现树形菜单
Apr 10 #Javascript
JS判断两个对象内容是否相等的方法示例
Apr 10 #Javascript
javascript防篡改对象实例详解
Apr 10 #Javascript
You might like
php 魔术方法使用说明
2009/10/20 PHP
常见php数据文件缓存类汇总
2014/12/05 PHP
php对数组内元素进行随机调换的方法
2015/05/12 PHP
PHP判断当前使用的是什么浏览器(推荐)
2019/10/27 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
JQuery 常用方法和事件详细介绍
2013/04/18 Javascript
Javascript自定义排序 node运行 实例
2013/06/05 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
在JS数组特定索引处指定位置插入元素
2014/07/27 Javascript
一个字符串反转函数可实现字符串倒序
2014/09/15 Javascript
js对象的复制继承实例
2015/01/10 Javascript
jQuery实现带滑动条的菜单效果代码
2015/08/26 Javascript
基于BootStrap的图片轮播效果展示实例代码
2016/05/23 Javascript
详解jQuery插件开发方式
2016/11/22 Javascript
基于Bootstrap的Java开发问题汇总(Spring MVC)
2017/01/15 Javascript
微信小程序通过api接口将json数据展现到小程序示例
2017/01/20 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
jQuery实现表格的增、删、改操作示例
2019/01/27 jQuery
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
详解JavaScript栈内存与堆内存
2019/04/04 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
vue中用 async/await 来处理异步操作
2020/07/18 Javascript
[57:53]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#3OG VS VP
2016/03/03 DOTA
读取本地json文件,解析json(实例讲解)
2017/12/06 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
Python tkinter实现简单加法计算器代码实例
2020/05/13 Python
django和flask哪个值得研究学习
2020/07/31 Python
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
全神贯注教学反思
2014/02/03 职场文书
拉歌口号大全
2014/06/13 职场文书
药店采购员岗位职责
2014/09/30 职场文书
电气工程师岗位职责
2015/02/12 职场文书
2015年度残疾人工作总结
2015/05/14 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书