新手vue构建单页面应用实例代码

时间:2021-05-18

本文介绍了新手vue构建单页面应用实例代码,分享给大家,具体如下

步骤:

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

一、目录结构:

二、搭建项目

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

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

输入命令进入项目: cd my-project

安装依赖: npm install

npm i

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

它会去找到package.json的scripts对象,执行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 = falsenew 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 } ]})

spa地址:https://github.com/cinderellastory415/vue-demo/tree/master/spa

详细操作:

git clone https://github.com/cinderellastory415/vue-demo/tree/master/spa

npm install

npm run dev

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

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章