当前位置: 首页 > news >正文

扬州网站推广地推团队去哪里找

扬州网站推广,地推团队去哪里找,有哪些网站可以做外贸批发,网站的常用建设技术有哪些前言 1.概念 Vuex是一个用于管理Vue.js应用程序中状态的状态管理模式和库。Vue.js是一个流行的JavaScript框架,用于构建用户界面,而Vuex则专门用于管理应用程序的状态,以确保状态在整个应用程序中保持一致和可维护。 2.Vuex的特点&#xf…

前言 

1.概念

Vuex是一个用于管理Vue.js应用程序中状态的状态管理模式和库。Vue.js是一个流行的JavaScript框架,用于构建用户界面,而Vuex则专门用于管理应用程序的状态,以确保状态在整个应用程序中保持一致和可维护。

2.Vuex的特点:

  1. 状态(State): 在Vuex中,状态是一个存储数据的对象,代表了应用程序中的某些信息或数据。这个状态是响应式的,意味着当状态发生变化时,相关组件会自动更新以反映这些变化。

  2. 存储(Store): Vuex引入了存储的概念,它是一个包含应用程序状态的单一对象。这个对象包含了你的应用程序中的所有全局状态,可以在整个应用程序中共享和访问。

  3. Getter: Getter是一种用于从状态中派生数据的计算属性。它们可以用于在组件中获取状态的部分数据,然后对其进行进一步处理。

  4. Mutation: Mutation是一种用于修改状态的方法,但是它们必须是同步的。这意味着它们用于执行状态的变更,但不能包含异步操作。Mutation用于记录状态变更,以便可以追踪和调试应用程序的状态变化。

  5. Action: Action类似于Mutation,但它可以包含异步操作。Actions用于提交Mutation,以便在异步操作完成后修改状态。这使得处理异步操作(例如HTTP请求)更加灵活和可维护。

  6. 模块化(Modules): Vuex允许你将应用程序的状态分割成模块。每个模块都有自己的状态、mutations、actions和getters,这有助于将大型应用程序的状态管理分解成更小的可管理部分。

使用Vuex的主要目标是确保应用程序中的状态管理变得可预测、可维护和易于理解。通过将状态集中存储在一个单一的Store中,你可以更轻松地追踪状态的变化、调试问题,并确保多个组件之间的状态同步。

要使用Vuex,你需要在Vue.js应用程序中安装和配置它,然后在组件中通过Getter、Mutation和Action来访问和修改状态。这有助于构建更具组织性和可维护性的Vue.js应用程序。

3.图解

 一.Vuex的取值与改变值

1.Vuex的使用

1.1安装

最新版本node.js: npm install vuex -S

指定版本安装 :npm i -S vuex@3.6.2

1.2 模拟Vuex管理编写基本页面

HTML

 <el-submenu  index="idx_258" key="key_258"><template slot="title"><span>vuex管理</span></template><el-menu-item index="/vuex/page1" key="key_258001"><span>页面1</span></el-menu-item><el-menu-item index="/vuex/page2" key="key_258002"><span>页面2</span></el-menu-item></el-submenu>

JS 

<template><div><h1>第二个页面</h1>{{msg}}</div>
</template><script>export default{data(){return {msg:'默认值'}}}
</script>
<template><div><h1>第一个页面</h1>{{msg}}</div>
</template><script>export default{data(){return {msg:'默认值'}}}
</script>

1.3 新建store仓库实例

分别在store仓库目录下创建actions.js、getters.js、mutations.js、state.js、index.js文件

(1)在store/state.js中定义状态数据

export default {TName:'YU'
}

(2)在store/mutations.js中设置修改状态的同步函数

export default{setTName:(state,payload){state.TName = payload.TName}
}

state指的就是state.js文件导出的对象,payload指的是vue文件中传递过来的参数

(3)通过store/getters.js进行存值

export default{getTname:(state){return state.TName;}
}

(4)store/index.js文件中新建vuexstore实例,并注册上面引入的各大模块

import Vue from 'vue'
import Vuex from 'vuex'
import state from './state'
import getters from './getters'
import actions from './actions'
import mutations from './mutations'
Vue.use(Vuex)
const store = new Vuex.Store({state,getters,actions,mutations})export default store

并且在main.js中进行配置,并在实例中挂载store仓库

import store from './store'

 2.取值与改变值

通过方法模拟获取值与改变值

<div><h1>第一个页面</h1><p>改变state中的值</p>请输入改变后的值<input v-model="msg" type="text"/><button @click="fun1">获取state值</button><button @click="fun2">改变state值</button></div>
methods:{fun1(){let Tname = this.$store.state.TName;alert(Tname)},fun2(){this.$store.commit('setTName',{TName:this.msg})}}

 效果演示

3.跨页面取值

 在page2中export default中定义计算属性对象获取值

computed:{TName(){return this.$store.state.TName}}

效果演示

二.异步请求

1.定义异步方法

export default{setTNameAsync:(context,payload)=>{setTimeout(function(){context.commit('setTName',payload);},5000)}
}

context指的是vuex的上下文 

通过定时器的方式展示异步请求的方法,并在提交异步请求时调用同步请求的方法

2.定义函数调用异步方法

fun3(){this.$store.dispatch('setTNameAsync',{TName:this.msg})}

效果展示

三.异步发送Ajax请求

 1.定义发送Ajax后台请求方法

setTNameAjax:(context,payload)=>{this.axios.post(url,{params:params}).then(r=>{let _this = payload._this;let url = this.axios.urls.VUEX_AJAX;let param = {resturantName:payload.TName}}).catch(e=>{})}

2.定义后台方法

@RequestMapping("/queryVuex")public JsonResponseBody<?> queryVuex(HttpServletRequest request) {String resturantName = request.getParameter("resturantName");SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String date = sdf.format(new Date());try {System.out.println("模拟异步情况,睡眠6秒,不能超过10秒,axios超时时间设置的是10秒!");Thread.sleep(6000);System.out.println("睡醒了,继续...");} catch (Exception e) {e.printStackTrace();}return new JsonResponseBody<>(resturantName + "-" + date,true,0,null);}

3.配置路由

'VUEX_AJAX':'vuex/queryVuex',//vuex的后台异步请求

4.前台函数调用

fun4(){this.$store.dispatch('setTNameAjax',{TName:this.msg,_this:this})}

注:这里需要将this进行传递到AJAX方法中进行调用

效果展示:

今天的分享到这里就结束了,感谢各位大大的观看,各位大大的三连是博主更新的动力,感谢谢谢谢谢谢谢谢谢各位的支持!!!!! 

 

http://www.tj-hxxt.cn/news/103646.html

相关文章:

  • 罗源做网站的公司百度排名怎么做
  • 软件开发与网站建设长沙网站开发
  • 企业汽车网站建设58百度搜索引擎
  • 成都网站建设 创新互联软文案例300字
  • 龙山建设工程有限公司网站产品市场推广方案范文
  • 12306网站建设花了多少钱西安网络优化哪家好
  • 高端网站制作福建省人民政府
  • 国家卫生健康委电话号码优化seo是什么
  • 顺德制作网站企业所得税优惠政策
  • 做后台财务系统网站宁波seo外包推广
  • python做网站稳定吗太原seo自媒体
  • 购买建立网站费怎么做会计凭证百度网页版主页
  • app模板素材下载网站优化排名哪家好
  • 陈巴尔虎旗网站建设微博推广方式有哪些
  • 工控主机做网站服务器关键词seo优化公司
  • 网站+做内容分发资格东莞seo建站哪家好
  • 企业做网站排名长沙网站托管seo优化公司
  • wordpress纯静态网站百度竞价是seo还是sem
  • 专门做旅游攻略的网站有哪些网络营销课程大概学什么内容
  • 网站开发建设合同书腾讯企点官网
  • 做网站常用的cssseo知识培训
  • 网站关于我们怎么做单页面免费网站在线观看人数在哪直播
  • 网站建设满意度问卷调查磁力蜘蛛种子搜索
  • wdcp 网站迁移整合营销传播方案
  • 网站开发背景网络营销热点事件案例分析
  • 武威 网站建设山东进一步优化
  • 谁知道做网站的电话谁有推荐的网址
  • 个人网站栏目设计建设官网的网站首页
  • 旅游网站建设目的北京网络推广
  • 成都建设网站首页教育培训网站官网