Vue项目
1、新建Vue项目:vue init webpack projectName
2、vue-router模块
1、安装vue-router模块:npm install vue-router --save-dev
2、在src文件夹下新建文件夹router继续新建文件index.js
编辑index.js文件
首先引入模块:
import Vue from 'vue';
import VueRouter from 'vue-router';
import home from '../component/home'
import user from '../component/user'
...(引入自己定义的组件)
声明引用:
Vue.use(VueRouter);
在接口通告新建的 router:
exports default new VueRouter({
routes: [
]
})
3、在main.js中编辑
import router from './router'(引入模块)
4、在App组件(组件都可以)中引用
<router-link to="/home">home</router-link>
<router-link to="/user">user</router-link>
<div>
<router-view></router-view>
</div>
2、vuex模块
1、安装vuex模块:npm install vuex --save
2、在src文件夹下创建新文件夹store再创建文件index.js
编辑index.js文件
引入模块:
import Vue from 'vue'
import Vuex from 'vuex'
声明引用:
Vue.use(Vuex)
宣告出口:
export default new Vuex.Store({
})
3、在main.js中编辑
import store from './store/index'(引入模块)
4、在index.js中继续编辑:
1、声明变量(单一状态树)
const state = {
count,
sum...(等等需要在不同组件中使用的变量)
}
在其他组件中引用:
1、先引入store模块:import store from '@/store/index'
2、正常访问变量:$store.state.count
3、通过 computed 的计算属性直接赋值
computed: {
  count () {
    return this.$store.state.count
  },
  sum() {
    return this.$store.state.sum
  }
}
4、借用辅助函数mapState
<script>
import mapState from 'vuex'//引入辅助函数
computed: mapState({//ES6的箭头函数
count: state => state.count,
sum: state => state.sum
}) //或者直接使用mapState辅助函数的字符串数组
computed: mapState(['count', 'sum']) </script>
2、声明控制状态对象的方法:
const mutations = {
add (state, n) {
state.count += n;
}
}
在其他组件中引用:
1、正常访问:$.store.commit('add', '10')
2、通过methods方法控制mutations(参考上面computed,注意:提交方法为:this.$store.commit('add'))
3、借用mapMutations辅助函数
import {mapState, mapMutations} from 'vuex'//引入辅助函数
methods: {
  ...mapMutations(['add'])
}
Vue项目的更多相关文章
- vue-cli快速构建Vue项目
		vue-cli是什么? vue-cli 是vue.js的脚手架,用于自动生成vue.js模板工程的. vue-cli怎么使用? 安装vue-cli之前,需要先装好vue 和 webpack npm i ... 
- requirejs + vue 项目搭建2
		上篇是年后的项目搭建的,时间比较仓促,感觉有点low 1.gulp-vue 文件对公用js的有依赖,以后别的同事拿去搭其他项目,估计会被喷 2.不支持vue-loader一样写模版语言和es6语法 最 ... 
- vue项目目录介绍
		Vue项目目录 初始化项目 vue init webpack []projectname] cd [projectname] npm install vue run dev 目录树 +---build ... 
- Vue 项目实战系列 (一)
		最近一直在学习Vue,基本的文档看完后就需要进行具体的项目进行练手了,本系列文章主要是将我学习过程记录下来,和大家一起学习交流. 我在git上找到了一个淘票票的Vue项目,项目地址: https:// ... 
- 简单vue项目脚手架(vue+webpack2.0+vuex+vue-router)
		github地址 使用技术栈 webpack(^2.6.1) webpack-dev-server(^2.4.5) vue(^2.3.3) vuex(^2.3.1) vue-router(^2.5.3 ... 
- vue项目构建与实战
		关于 微信公众号:前端呼啦圈(Love-FED) 我的博客:劳卜的博客 知乎专栏:前端呼啦圈 前言 由于vue相对来说比较平缓的学习过程和新颖的技术思路,使其受到了广大前后端开发者的青睐,同时其通俗易 ... 
- Vue项目搭建完整剖析全过程
		Vue项目搭建完整剖析全过程 项目源码地址:https://github.com/ballyalex 有帮助的话就加个星星呗~! 项目技术栈:vue+webpack+bower+sass+axios ... 
- 利用webpack构建vue项目
		快速搭建vue项目 一,确认自己有无搭建好node以及npm环境,这些是前提,具体安装方法可参考https://nodejs.org/en/. 二,开始构建项目. 第1步:新建一个文件夹,随意命名. ... 
- 如何快速把 Vue 项目升级到 webpack3
		由于 webpack3升级后,新增了 Scope Hositing(作用域提升) 功能,据说是对 js的性能提升很大.因此,我们做了一个测试对比,就是 webpack3和 webpack1/2 的性能 ... 
- vue-修改vue项目运行端口号
		一.导语 最近在研究,左侧是导航,右侧是显示对应的内容,左右可单独滚动,不互相影响,如何实现? 萝卜蹲的游戏大家都玩过,白萝卜蹲,白萝卜蹲,白萝卜蹲完红萝卜蹲,可是若是在含有滚动条的页面的情况下,白萝 ... 
随机推荐
- headfirst python 05, 06
			处理数据 with open('james.txt') as jaf: data = jaf.readLine() james = data.strip().split(',') #先去掉空格而否有, ... 
- 跨浏览器的placeholder-jQuery版(jQuery插件EnPlaceholder)
			案例:整搜索框,需要默认占位符为"请输入关键词",获取焦点时,占位符消失或不可用(不影响正常输入),丢失焦点后,若用户无内容输入,占位符继续出现,继续占位.这种代码我想前端们已经很 ... 
- java对象与map对象相互转换
			/** * 使用org.apache.commons.beanutils进行转换 */ class A { public static Object mapToObject(Map<String ... 
- Ant   学习笔记
			1.下载Ant 官方网站http://ant.apache.org/bindownload.cgi 下载最新版本 .zip archive: apache-ant-1.9.4-bin.zip [PG ... 
- spring quartz1.8.6集群结算服务定时任务与appserver独立分开
			1.quartz集群如何处理同一个数据库,同一套sqtz表的lock问题,否则会导致打架. 思路如下: 1.com.xxx.quartz.BeanInvokingJobDetailFactoryBea ... 
- linux环境中,多个命令之间,通过&& ||执行,命令之间执行的逻辑是什么?
			需求描述: 最近在写一个脚本的时候,要判断一个文件是否存在,有怎么样,没有就创建,这个时候 看到了一个test 结合 || 或者 &&的写法,就查看了下资料记录下是怎么个玩法. 操作过 ... 
- [Artoolkit] Framework Analysis of nftSimple
			What is nftSimple? Loads NFT dataset names from a configuration file. The example uses the “Pinball. ... 
- java面试(2)--大数据相关
			第一部分.十道海量数据处理面试题 1.海量日志数据,提取出某日访问百度次数最多的那个IP. 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中.注意到IP是32位的,最多有个2^ ... 
- git合并分支上指定的commit
			merge 能够胜任平常大部分的合并需求.但也会遇到某些特殊的情况,例如正在开发一个新的功能,线上说有一个紧急的bug要修复.bug修好了但并不像把仍在开发的新功能代码也提交到线上去.这时候也许想要一 ... 
- puppet cron资源管理
			1.可用参数: ensure ensure => {present|absent}, 决定该计划任务的目标状态,present 如该cron不存在,则添加;absent 如该cro ... 
