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

怎样做自己的国外网站专业seo优化费用

怎样做自己的国外网站,专业seo优化费用,郑州十大平面设计公司排名,做机械的有什么网站14天阅读挑战赛 学不可以已... 目录 一、Vuex简介 1.1 vuex介绍 1.2 vuex核心 二、Vuex使用 2.1 Vuex安装 2.2 创建store模块 2.3 创建vuex的store实例并注册上面引入的各大模块 三、使用Vuex获取、修改值案例 3.1 创建两个菜单组件 3.2 配置路由 3.3 模拟菜单数据 …14天阅读挑战赛 学不可以已... 目录 一、Vuex简介 1.1 vuex介绍 1.2 vuex核心 二、Vuex使用 2.1 Vuex安装 2.2 创建store模块 2.3 创建vuex的store实例并注册上面引入的各大模块 三、使用Vuex获取、修改值案例 3.1 创建两个菜单组件 3.2 配置路由 3.3 模拟菜单数据 3.4 vuex核心操作 3.5 界面获取、修改值实现 四、异步处理 4.1 异步改变值 4.2 异步发送Ajax到后端 Tips❕ 一、Vuex简介 1.1 vuex介绍 Vuex是专门为vue应用程序开发的状态管理模式将组件的共享状态抽取出来以一个全局单例模式进行管理组件树构成一个巨大的视图不管组件在树的何种位置任何组件都能获取到状态和触发行为。可以将其想象为一个“前端数据库”数据仓库让其在各个页面上实现数据的共享包括状态并且可操作。核心就是 解决组件间的通讯问题 1.2 vuex核心 State单一状态树存储应用程序的状态数据类似于组件中的data属性。但与组件的data不同Vuex的状态是响应式的当状态发生变化时所有依赖该状态的组件都会自动更新。 Getters状态获取用于从状态中派生出新的数据类似于Vue组件中的计算属性。Getters可以对状态进行一些计算或过滤并将结果暴露给组件使用。 Mutations变更用于修改状态的唯一途径。Mutations是同步的操作用于处理同步的状态变更。每个Mutation都有一个字符串类型的事件名称和一个回调函数通过提交commitMutation来触发状态的变更。 Actions动作提交mutation可以包含异步操作用于处理异步操作和复杂的业务逻辑。Actions可以包含任意异步操作例如发送网络请求或执行定时任务并通过提交Mutations来修改状态。Actions可以通过分发dispatch来触发。 Modules模块用于将大型的Vuex应用程序拆分为更小的模块每个模块都有自己的状态、获取器、变更和动作。这样可以更好地组织代码提高代码的可维护性和可扩展性。 使用Vuex可以带来以下好处 集中式的状态管理将应用程序的状态集中管理使得状态的变更更加可追踪和可维护。 组件之间的数据共享不同组件之间可以轻松地共享状态避免了通过props和事件传递数据的繁琐过程。 状态的可预测性通过明确的状态变更方式Mutations和Actions可以更好地追踪状态的变化提高代码的可读性和可维护性。 插件扩展Vuex提供了丰富的插件机制可以方便地扩展Vuex的功能例如添加日志记录、持久化存储等。 二、Vuex使用 2.1 Vuex安装 注意 运行环境 1、node.js版本10输入下指令进行安装 npm install vuex -S 2、node.js版本18请执行下指令  npm i -S vuex3.6.2 2.2 创建store模块 创建store目录及需要的文件 2.3 创建vuex的store实例并注册上面引入的各大模块 1、src/store/index.js 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 store2、src/main.js 通过在根实例中注册store选项该store实例会注入到根组件下的所有子组件中且子组件可以通过this.$store访问到。 三、使用Vuex获取、修改值案例 3.1 创建两个菜单组件 src/views/vuex 3.2 配置路由 src/router/index.js 3.3 模拟菜单数据 !-- 模拟数据 --el-submenu keykey_999 indexindex_999template slottitlespan slottitleVuex管理/span/templateel-menu-item keykey_99901 index/vuex/pageOnespanpageOne/span/el-menu-itemel-menu-item keykey_99902 index/vuex/pageTwospanpageTwo/span/el-menu-item/el-submenu 3.4 vuex核心操作 1、在state.js中定义全局参数 export default {Name: 云村小威 }2、在mutations.js中改变值 export default {/* 1.state指state.js文件导入的对象2.payload指vue文件传递过来的界面*/setName: (state, payload) {state.Name payload.Name} }3、在getters.js中获取参数值 export default {getName: (state) {return state.Name;} }这一些列操作相当于java分装实体类把它一一才拆分这样可以更好地组织代码提高代码的可维护性和可扩展性。 3.5 界面获取、修改值实现 1、pageOne.vue组件编写 templatedivh1PageOne/h1p请输入您要修改的值/pinput typetext v-modelmsgbutton clickchanged修改参数值/buttonbutton clickgetData获取参数值/button/div /templatescriptexport default {data() {return {msg: 默认值}},methods:{changed(){this.$store.commit(setName,{Name:this.msg})},getData(){let name this.$store.getters.getName;alert(name);}}} /scriptstyle /style注意 setName是mutations.js导出的属性名getName是getters.js导出的属性名 效果展示 2、pageTwo.vue组件编写 templatedivh1PageTwo/h1{{change}}/div /templatescriptexport default {data() {return {msg: 默认值}},computed:{change(){return this.$store.getters.getName;}}} /scriptstyle /style效果展示 四、异步处理 4.1 异步改变值 1、src/store/actions.js export default {setNameSync: (context, payload) {//context指的是vuex的上下文setTimeout(function() {context.commit(setName, payload)}, 3500)} };2、在pageOne.vue组件添加异步事件 button clickAsynchronization异步改变参数值/buttonAsynchronization() {this.$store.dispatch(setNameSync, {name: this.msg})} 效果演示 4.2 异步发送Ajax到后端 1、后端请求代码编写 package com.ycxw.ssm.controller;import com.zking.ssm.util.JsonResponseBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpServletRequest; import java.text.SimpleDateFormat; import java.util.Date;RestController RequestMapping(/vuex) public class VuexController {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);} }2、src/api/action.js 封装请求的地址 VUEX: /vuex/queryVuex 3、src/store/actions.js 异步发送ajax到后端 setNameAjax: (context, payload) {let _this payload._this;let url _this.axios.urls.VUEX;let params {resturantName: payload.Name};_this.axios.post(url, params).then(r {console.log(r)}).catch(r {//异常代码console.log(r);});} 4、在pageOne.vue组件添加Ajax异步事件 button clickAjax异步Ajax改变参数值/buttonAjax() {this.$store.dispatch(setNameAjax, {Name: this.msg,_this: this})} 十秒异步处理演示 Tips❕ Action类似于 mutation不同在于 1. Action提交的是mutation而不是直接变更状态 2. Action可以包含任意异步操作 3. Action的回调函数接收一个 context 上下文参数注意这个参数可不一般它与 store 实例有着相同的方法和属性 注1 VUEX 的 actions 中无法获取到 this 对象 如果要在actions 或者 mutations 中使用this对象可以在调用的时候把this对象传过去。
http://www.w-s-a.com/news/327321/

相关文章:

  • 网站怎么设置支付网站源码下载后怎么布置
  • 广州市公需课在哪个网站可以做手机商城软件下载
  • app网站建设需要什么长治网站建设公司
  • 网站模板平台广告宣传网站
  • cc域名的网站做网站放太多视频
  • 让公司做网站要注意什么建设工程公司企业文化
  • 佛山搭建建网站哪家好微信如何建立自己的公众号
  • 联想公司网站建设现状广州建网站兴田德润团队
  • 网站开发的技术有网页设计实训报告工作内容和步骤
  • 视频做网站长沙网站制作平台
  • js网站建设北京seo公司优化网络可见性
  • 付款网站源码建网站卖东西
  • 用php做的录入成绩的网站wordpress等级插件
  • 网站运营优化方案广西桂林公司
  • 快递网站策划怎么做ppt长春建设信息网站
  • 做服装搭配图的网站有哪些经营一个网站要怎么做
  • 呼市品牌网站建设那家好增城住房和建设局网站
  • 网站首页布局设计代码太仓网站开发建设服务
  • 学校网站建设与管理porto wordpress模板
  • 余姚做网站公司网站建设有哪些基本流程
  • 门户网站建设的报价百度医生在线问诊
  • 北京公司注册在哪个网站浏览器打开网址404
  • 廊坊做网站公司绣花图案设计网站
  • 网站空间租用哪个好购物网站建设模板图片
  • 建设银行包头分行网站泰安网签成交量最新
  • 手机微网站与微官网现在去成都需要隔离吗
  • 学校的二级网站怎么建设深圳企业网站制作设计
  • 自己做qq头像静态的网站网站建设是属于软件开发费吗
  • 举报网站建设做网站之前的工作
  • 用QQ群做网站排名个人网站制作协议