vue-cli中配置vuex流程和注意事项
本文目录
- vue-cli下新建站
- 配置路由更改HelloWorld.vue组件到新建Home.vue组件
- 安装vuex
- 测试是否安装成功vuex
一:vue-cli下新建站
a)新建文件夹vuexStudy
b)进入命令窗口:vue init webpack
特别引调,输入站点名称不能为vuex
一路默认执行,创建vue-cli下的webpack模板站点npm run dev
在浏览器中,输入http://localhost:8080 (确保你自己端口号),确认成功后进行下这vuex安装
二:安装vuex(
备注:
1)安装vuex前,可以考虑清空HelloWorld.vue内容,也可采用新建一个空组件(即去掉视图模板<template></template>无关干扰列表等住处)如新建home.vue
home.vue文件如下<template>
<div class="Home">
{{msg}}
</div>
</template>
<script>
export default {
data () {
return {
msg: 'Home.vue 组件'
}
}
}
</script>2)配置路由文件/router/index.js 更改helloWorld.vue为home.vue
配置路由.index.js添加如下文件import Vue from 'vue'
import Router from 'vue-router'
import Home from '@/components/Home' Vue.use(Router) export default new Router({
routes: [
{
path: '/',
name: 'Home',
component: Home
}
]
})
网址中输入浏览:http://localhost:8080
出现如下内容,说明配置路由更改helloWorld.vue组件到home.vue
a)安装命令
npm install vuex --save
b)配置
在 main.js配置入口中,配置 vuex如下
import Vuex from 'vuex'
Vue.use(Vuex)
三:测试是否安装成功Vuex
a)新建文件夹与文件
b)main.js入口配置文件中,配置vuex
c)组件home.vue调用state选项,保存在文件rootState.js的变量
备注:如果在项目中需要配置的vuex选项很多,我们则应该把vuex的相关代码分割到不同模块
a)新建文件夹与文件
a)在src下新建store文件夹,在文件夹中创建如下几个文件
rootState.js 对应核心概念 state选项
getters.js 对应核心概念 getter选项
mutation.js 对应核心概念 mutations选项
action.js 对应核心概念 actions选项
index.js 整合如上各个模块,创建并导出vuex实例
我们可以随意设置如上文件名,但最好可以通过文件名就能判断出这个文件是用来干嘛的
index.js中代码如下
强调:import Vue from 'vue' 此导入第二个vue要全部小写,不则配置找不到变量
import Vue from 'vue';
import Vuex from 'vuex';
import state from './rootState.js';
import getters from './getters.js';
import mutations from './mutations.js';
import actions from './actions.js'; Vue.use(Vuex);
const store = new Vuex.Store({
state,
getters,
actions,
mutations
}); export default store;
b)store文件夹下,四个文件(rootState.js getters.js mutations.js actions.js)配置都差不多一样,以rootState.js为例
rootState.js代码如下
/**
* 此文件除声明变量,还可声明数组
* */
const state = {
count: 0,
firstName: '姓张',
lastName: '名许',
student: ['张三', '李四', '王二']
}
export default state
b)main.js入口配置文件中,配置vuex
首先:main.js文件
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store/index'; //导入store下配置的vuex相关文件 Vue.config.productionTip = false new Vue({
el: '#app',
router,
store,//引用store
components: { App },
template: '<App/>'
})
再次:到home.vue中调用rootState.js变量
思路分析两点:
通过computed:{}选项来引用文件rootState.js文件中变量,代码如下
<template>
<div class="Home">
<p>测试home.vue组件配置成功否:{{msg}}</p>
<p>引用state选项一个变量:{{count}}</p>
<p>引用state选项两个变量组合:{{fullName}}</p>
<p>引用state选项中的数组:{{students}}</p>
</div>
</template>
<script>
export default {
name: 'Home',
data () {
return {
msg: 'Home.vue 组件'
}
},
computed: {
// 调用是vuex,state选项文件rootState.js中声明变量
count () {
console.log('this结构:' + this.$store.state.count)
return this.$store.state.count
},
// 调用是vuex,state选项文件rootState.js中声明变量
fullName () {
console.log('this结构:' + this.$store.state.firstName)
return this.$store.state.firstName + this.$store.state.lastName
},
students () {
return this.$store.state.students
}
}
}
</script>
个人首次配置vuex心得,具体遇到问题,后期完善
vue-cli中配置vuex流程和注意事项的更多相关文章
- vue cli 中关于vue.config.js中chainWebpack的配置
Vue CLI 的官方文档上写:调整webpack配置最简单的方式就是在vue.config.js中的configureWebpack选项提供一个对象. Vue CLI 内部的 webpack 配置 ...
- Vue Cli 中使用 Karma / Chrome 执行样式相关单元测试
在 GearCase 开源项目 中,我使用了 Vue Cli 的默认测试框架.因此和样式相关的东西,都无法进行测试.因为它并不类似于无头浏览器,而是存在于虚拟内存之中. 现状 在如下 button.s ...
- [Vue CLI 3] 配置解析之 indexPath
在 vue.config.js 配置中有一个 indexPath 的配置,我们先看看它有什么用? 用来指定 index.html 最终生成的路径(相对于 outputDir) 先看看它的默认值:在文件 ...
- vue cli中的env详解
前言 相信使用过 vueCli 开发项目的小伙伴有点郁闷,正常开发时会有三个接口环境(开发,测试,正式),但是 vueCli 只提供了两种 development,production(不包含 tes ...
- @vue/cli的配置知道多少-publicPath,outputDir,assetsDir,indexPath,filenameHashing,configureWebpack,productionSourceMap
vue.config.js的简单介绍 vue.config.js 是一个可选的配置文件, 在项目的 (和 package.json 同级的) 根目录中存在这个文件. 默认情况没有这个文件需要我们手动去 ...
- 在VUE应用中配置ESLint(代码检查)
eslint配置方式 注释配置:使用js注释来直接嵌入ESLint配置信息到一个文件里 配置文件:使用一个js文件,JSON或者YAML文件来给整个目录和它的子目录指定配置信息.这些配置可以写在一个文 ...
- Vue项目中使用Vuex + axios发送请求
本文是受多篇类似博文的影响写成的,内容也大致相同.无意抄袭,只是为了总结出一份自己的经验. 一直以来,在使用Vue进行开发时,每当涉及到前后端交互都是在每个函数中单独的写代码,这样一来加大了工作量,二 ...
- [Vue CLI 3] 配置解析之 parallel
官方文档中介绍过在 vue.config.js 文件中可以配置 parallel,作用如下: 是否为 Babel 或 TypeScript 使用 thread-loader. 该选项在系统的 CPU ...
- 在vue项目中配置webpack
首先我们来看一下使用Vue-cli2与Vue-cli2之后的版本(这里以Vue-cli4版本为例)创建项目目录结构的不同: Vue-cli2(左图)与Vue-cli4(右图)创建项目的目录 从上图可以 ...
随机推荐
- Boyer-Moore 算法 Leetcode169
Boyer-Moore 算法 Leetcode169 一.题目 169. 多数元素 给定一个大小为 n 的数组,找到其中的多数元素.多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素. 你可以假 ...
- springboot打印sql语句及执行时间
有时候我们程序的接口比较耗时,需要优化,这时我们可能需要了解该接口执行了哪些sql语句以及耗时 1.引入jar包 <!--监控sql日志--> <dependency> < ...
- Ajax等待返回结果时,弹出一个友好的等待提示
巧用Ajax的beforeSend 提高用户体验 jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动作. 具体可参考j ...
- oracle的锁种类知识普及
锁概念基础 数据库是一个多用户使用的共享资源.当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况.若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性. 加 ...
- 十五 awk文本处理
Awk 语法和基础命令 以行为处理单位 对数据进行逐行处理 处理完当前行,把当前行的处理结果输出后自动对下一行进行处理 直到文件中所有行处理完为止 创造者:Aho.Weinberger.Kernigh ...
- 函数调用约定_stdcall[转]
关键字 清理堆栈 参数入栈顺序 函数名称修饰(C) __cdecl 调用函数 右 à 左 _函数名 __stdcall 被调用函数 右 à 左 _函数名@数字 __fastcall 被调用函数 右 à ...
- 最小生成树(一)kruskal
今天写一篇关于最小生成树的番外篇,以前写最小生成树总是用的prim,关于kruskal只是知道一些原理,一直也没有时间去学,今天偶然看了一些并查集,才想起了这个算法 会想起刚刚(预)学过的数据结构,来 ...
- Python 代码风格规范(Google)
Python风格规范 分号 tip 不要在行尾加分号, 也不要用分号将两条命令放在同一行. 行长度 tip 每行不超过80个字符 例外: 长的导入模块语句 注释里的URL 不要使用反斜杠连接行. Py ...
- pyinstaller相关问题 & pygame文件打包成exe文件 & 武装飞船 & 飞机大战
自己照书写了一个飞机大战游戏的python程序,想把它打包成一个exe文件,在查阅相关教程并经过数次尝试后终于成功. 安装打包应用 pyinstaller 在cmd命令窗口下pip install p ...
- 题解 SP1716 【GSS3 - Can you answer these queries III】
\[ Preface \] 没有 Preface. \[ Description \] 维护一个长度为 \(n\) 的数列 \(A\) ,需要支持以下操作: 0 x y 将 \(A_x\) 改为 \( ...