本人写的小程序,功能还在完善中,欢迎扫一扫提出宝贵意见!

         

步骤:

1.使用vue-cli创建项目
2.使用vue-router实现单页路由
3.用vuex管理我们的数据流
4.使用vue-resource请求我们的node服务端
5.使用.vue文件进行组件化的开发

一、目录结构:

二、搭建项目

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

Mac安装 vue-cli: sudo npm install -g vue-cli

Windows 安装 vue-cli:npm install -g vue-cli

构建初始化项目:vue init webpack project(创建webpack项目并下载依赖)

输入命令进入项目: cd project

安装依赖: npm install

npm i

开始运行: npm run dev (或输入http://localhost:8080),在热加载中运行我们的应用

它会去找到package.jsonscripts对象,执行node bulid/dev-server.js

在这文件里,配置了Webpack,会让它去编译项目文件,并且运行服务器。

这些都准备好后,我们需要为我们的路由、XHR请求、数据管理下载三个库,我们可以从vue的官网中找到他们。另外我们使用bootstrap作为我的UI库:

npm i vue-resource vue-router vuex bootstrap --save

三、项目开始

初始化项目(main.js)

查看我们的应用文件,我们可以在src目录下找到App.vue和main.js文件中,我们引入Vue和App,且创建了一个vue的实例(因为在router这行引入了App组件router.start(App,'#app'))

import Vue from 'vue'
import App from './App'
import router from './router' import VueResource from 'vue-resource'
Vue.use(VueResource)
Vue.config.productionTip = false new Vue({
el: '#app',
router,
template: '<App/>',
components: { App }
})

index.html

<body>
<div id="app"></div>
</body>

App.vue

<template>
<div id="app">
<div class="row">
<div class="col-xs-offset-2 col-xs-8">
<div class="page-header">
<h2>Router Basic - 01</h2>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-2 col-xs-offset-2">
<ul class="list-group">
<!--使用指令v-link进行导航-->
<a class="list-group-item"><router-link to="/home">Home</router-link></a>
<a class="list-group-item"><router-link to="/about">About</router-link></a>
<a class="list-group-item"><router-link to="/contact">Contact</router-link></a>
</ul>
</div>
<div class="col-xs-6">
<div class="panel">
<div class="panel-body">
<!--用于渲染匹配的组件-->
<router-view></router-view>
</div>
</div>
</div>
</div>
</div>
</div>
</template> <script>
export default {
name: 'app'
}
</script>

//   src/components/Home.vue 作为我们的首页

<template id="contact">
<div>
<h1>Home</h1>
<p>This is the tutorial about Contact.</p>
</div>
</template> <script>
export default {
'/hello': 'Hello'
}
</script>

//   src/components/About.vue

<template id="about">
<div>
<h1>About</h1>
<p>This is the tutorial about vue-router.</p>
</div>
</template>
<script>
export default {
'/about': 'About'
}
</script>

//   src/components/Contact.vue

<template id="contact">
<div>
<h1>Contact</h1>
<p>This is the tutorial about Contact.</p>
</div>
</template> export default {
'/contact': 'contact'
}
</script>

//   src/index.js

import Vue from 'vue'
import Router from 'vue-router'
import Hello from '@/components/Hello'
import Home from '@/components/Home'
import About from '@/components/About'
import Contact from '@/components/Contact'
import 'bootstrap/dist/css/bootstrap.css' Vue.use(Router) export default new Router({
routes: [
{
path: '/',
name: 'Hello',
component: Hello
},
{
path: '/home',
name: 'Home',
component: Home
},
{
path: '/about',
name: 'About',
component: About
},
{
path: '/contact',
name: '/Contact',
component: Contact
}
]
})

查看项目

详细操作:

  1. 克隆项目:git clone https://github.com/cinderellastory415/vue-demo/tree/master/spa
  2. 安装依赖:npm install
  3. 运行项目:npm run dev 或者  npm start

输入以上命令,即可查看效果!

新手vue构建单页面应用实例的更多相关文章

  1. 借助 Vue 来构建单页面应用

    原文: https://github.com/MeCKodo/vue-tutorial 主题 Vue.js (1/2)Vue构建单页应用最佳实战 前言 我们将会选择使用一些vue周边的库 1.使用no ...

  2. spring boot使用vue+vue-router构建单页面应用

    spring boot http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ vue https: ...

  3. jQuery File Upload 单页面多实例的实现

    jQuery File Upload 的 GitHub 地址:https://github.com/blueimp/jQuery-File-Upload 插件描述:jQuery File Upload ...

  4. 使用Angular构建单页面应用(SPA)

    什么是SPA?看下图就是SPA: 下面说正经的,个人理解SPA就是整个应用只有一个页面,所有的交互都在一个页面完成,不需要在页面之间跳转. 单页面的好处是更快的响应速度,更流畅的用户体验,甚至和桌面应 ...

  5. 【vue】使用vue构建多页面应用

    先了解一些单页面和多页面的区别 mm 多页应用模式MPA 单页应用模式SPA 应用构成 由多个完整页面构成 一个外壳页面和多个页面片段构成 跳转方式 页面之间的跳转是从一个页面跳转到另一个页面 页面片 ...

  6. 用vue构建多页面应用

    最近一直在研究使用vue做出来一些东西,但都是SPA的单页面应用,但实际工作中,单页面并不一定符合业务需求,所以这篇我就来说说怎么开发多页面的Vue应用,以及在这个过程会遇到的问题. 准备工作 在本地 ...

  7. webpack+react+antd 单页面应用实例

    React框架已经火了好长一段时间了,再不学就out了! 对React还没有了解的同学可以看看我之前的一篇文章,可以快速简单的认识一下React.React入门最好的实例-TodoList 自己从开始 ...

  8. 基于Vue的单页面应用的Markdown渲染

    之前渲染 Markdown 的时候, 笔者使用的是 mavonEditor 的预览模式, 使用起来比较爽, 只需要引入组件即可, 但是在最近的开发中, 遇到了困难. 主要问题在于作为单页面应用, 站内 ...

  9. vue2.0+elementUI构建单页面后台管理平台

    git:https://github.com/reg21st/vue2-management-platform 访问:https://reg21st.github.io/vue2-management ...

随机推荐

  1. 【函数参数】什么是*args和**kwargs?

    **args表示任何多个无名参数,它是一个tuple,Python将**args从开始到结束作为一个tuple传入函数 **kwargs表示关键字参数,它是一个dict,Python将**kwargs ...

  2. 实现一个自定义的ArrayList类,实现将原List中的每个数据都乘以10

    1.首先自定义一个Operate接口,如下所示: public interface Operate { public Integer caozuo(Integer i); } 2.实现自定义的Arra ...

  3. Halcon 和 C# 联合编程 - 图像变量的相互转换(HObject、HImage、Bitmap)

    /// <summary> /// 灰度图像 HObject -> Bitmap /// </summary> public static Bitmap HObject2 ...

  4. SSM框架下 Failed to load resource: the server responded with a status of 404 (Not Found)错误

    这个错误提示的是js的引用路径有错: 1.检查应用路径是否正确(我的问题是路径是正确的但是去到页面就会提示404错误) 引用路径,最好都使用绝对路径 <script type="tex ...

  5. Springboot 实现多环境配置

    多环境配置 我们在开发Spring Boot应用时,通常同一套程序会被应用和安装到几个不同的环境,比如:开发.测试.生产等.其中每个环境的数据库地址.服务器端口等等配置都会不同,如果在为不同环境打包时 ...

  6. css 修改input中placeholder提示问题颜色

    input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: rgba(74, 87, 103, 1); ...

  7. 【js】高阶函数是个什么?

    所谓高阶函数,就是函数中可以传入另一个函数作为参数的函数. 简单一张图,方便理解全文. function 高阶函数(函数){} 这是一个高阶函数,f是传入的函数作为参数. 其实高阶函数用的很多.其实平 ...

  8. EDK II之Secure Boot简述

    密钥对:公钥分发,私钥自留.常见的公钥格式:cer/der,常见的私钥格式:pfx. BIOS中Secure Boot的原理:把公钥包在code里面,当使用gBS->LoadImage()去加载 ...

  9. idea maven指定编译参数

    "Settings" > "Build, Execution, Deployment" > "Compiler" > &q ...

  10. 算法(第四版)C# 习题题解——2.3

    写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更为方便的版本见:http ...