nodejs模拟wss服务提示The subprotocol ‘[object Object]‘ is invalid.的问题分析 nodejs模拟wss服务提示The subprotocol ‘[object Object]‘ is invalid.的问题分析
前端项目运行时提示Syntax Error: TypeError: token.type.endsWith is not a function的解决方案 参考文档:https://www.baidu.com/link?url=rxkuHBNVNB0i7GCoDEfgkwDr3AllV9XWRLWwkFQl7p1PjamwyIPupL93spZDTywmxMetZ7yHNtqtgJRPGR0POa&wd=&eqid=d1c30348003392a90000000461721b6e问题背景:当为项目代码拉取分支后执行npm install下载依赖包,然后执行npm run serve发现项目运行失败,提示信息为Syntax Error: T
Confluence6.3服务器掉电恢复流程 由于机房掉电导致团队的Confluence服务器异常关机,服务器重新上电后发现Confluence服务异常,而后续的恢复过程比较曲折,且个别恢复操作非常重要(执行错误可能导致数据丢失),特此记录恢复流程供大家参考。服务器上电首先是给掉电的服务器上电,这个没什么好说的,服务器开机就完事了。打开ssh服务如果是在机房用显示器/键盘直连服务器或服务器ssh服务默认是开启状态,则此步可以跳过,否则需要手动执行以下命令打开ssh服务:service sshd start关闭服务器防火墙如果服务器防火墙
Vuex的使用(十二)——module引入的衍生问题及验证结果 参考文档:https://vuex.vuejs.org/zh/guide/在上一章里我们了解到可以从业务功能角度把Vuex拆分为多个module(每个module都有一套自己的state、getters、mutations和actions),这样每个业务模块都可以拥有一份属于自己的子Vuex对象(即module)。但这样做同样也会带来一些问题:如果module想要引用根Vuex对象的state、getters、mutations或actions该怎么操作?module之间需要互相引用该怎么操作,哪些
Vuex的使用(十一)——module的定义和用法 参考文档:https://vuex.vuejs.org/zh/guide/在前面的文章里介绍actions时提到我们可以把actions的定义部分从Vuex拆出来,避免Vuex的定义文件过度膨胀,这可以视为从功能角度拆分Vuex。但实际项目开发中更常见的情况是需要从业务角度来拆分Vuex,如希望某一功能模块可以共享一份state、getters、mutations和actions,这时就轮到module上场了。首先定义一个module(新增文件路径为src\store\moduleA\index.js)
Vuex的使用(十)——mutations和actions的返回值测试 参考文档:https://vuex.vuejs.org/zh/guide/在官方网站中有关于actions返回结果的例子,但却没有mutations返回结果的例子,首先把结论说明一下:actions允许返回结果,mutations不允许返回结果(即使写了return也不生效)。首先在Vuex中补充返回结果的mutations(mutation3方法,修改文件路径为src\store\index.js),下面上代码:import Vue from “vue”;import Vuex from “vu
Vuex的使用(九)——actions的其他用法 参考文档:https://vuex.vuejs.org/zh/guide/在上一章的例子中介绍了actions可以在内部发起异步请求,且能够在内部调用mutation,下面介绍一下actions的其他用法:actions和mutations一样允许传一个自定义参数;actions支持互相调用(mutations不支持);actions允许返回结果。在上一章的独立actions文件中扩展定义(修改文件路径为src\store\action.js),代码如下:export default {/
Vuex的使用(八)——actions和mapActions的用法 参考文档:https://vuex.vuejs.org/zh/guide/actions功能与mutations相近,区别主要有以下两点:actions不能直接改变state,只能通过调用mutation来改变state(mutation不能调用mutation,但是actions可以);mutation只能执行同步操作,actions可以执行异步操作。如果我们把state、getters、mutations和actions一股脑全部定义在一个文件里,会导致Vuex的定义文件非常臃肿,因此在下面
Vuex的使用(七)——mapMutations的用法 参考文档:https://vuex.vuejs.org/zh/guide/mapMutations的定义可以对标mapState和mapGetters,就不赘述了,下面直接上示例代码。首先在Vuex中补充mutations的其他几种用法(修改文件路径为src\store\index.js),代码如下:import Vue from “vue”;import Vuex from “vuex”;Vue.use(Vuex);const store = new Vuex.Store({state: {
Vuex的使用(六)——mutations的定义和用法 参考文档:https://vuex.vuejs.org/zh/guide/state是在整个前端应用中需要共享和维护的状态,而在之前的几章里主要介绍了state及其衍生概念的共享和使用,下面重点介绍一下state的维护方式——mutations。官网对mutation的定义:更改Vuex的store中的状态的唯一方法是提交mutation。笔者对mutations的理解是:Vuex需要对state进行管理,则必须把控state的维护入口,因此所有对state的变更请求都必须通过mutations来完成。
Vuex的使用(五)——mapGetters的定义和用法 参考文档:https://vuex.vuejs.org/zh/guide/当需要在组件中使用多个getters时,可以利用mapGetters批量生成计算属性(新增文件路径为src\components\componentE.vue),代码如下: mapGetters用法 getters in vuex:{{param2}} 引用上面创建的component-e查看效果(修改文件路径为src\main.js),代码如下:imp
Vuex的使用(四)——mapState的简化写法 参考文档:https://vuex.vuejs.org/zh/guide/按上一章的说明,可以在mapState的参数对象里定义多个属性来批量声明state,如果不需要对state进行额外处理的话,写法还可以进一步简化(新增文件路径为src\components\componentC.vue),代码如下: mapState简化写法 stete in vuex:{{param1}} 如果想定义组件自己的局部计算变量,则需要调整一下
Vuex的使用(三)——mapState的定义和用法 参考文档:https://vuex.vuejs.org/zh/guide/当需要在组件中使用多个state时,可以利用mapState批量生成计算属性
Vuex的使用(二)——state和getters的定义和用法 参考文档:https://vuex.vuejs.org/zh/guide/首先澄清一下笔者对state和getters的理解:state即在整个前端应用中需要共享和维护的状态,但这个状态并没有持久化(刷新就会丢失,好处是不同在所有的组件中都写一次派生算法);getters是基于state派生出的状态(其作用类似于计算变量)。state的用法比较简单,具体可以参考上一篇文章,下面主要介绍一下getters的集中常见用法。
Vuex的使用(一)——在项目中引入Vuex 参考文档:https://vuex.vuejs.org/zh/guide/如果当前没有项目代码,可以访问传送门搭建一个,以下Vuex相关功能都是在传送门搭建项目的基础上开发的。首先是Vuex的创建(文件路径为src\store\index.js),代码如下:import Vue from "vue";import Vuex from "vuex";Vue.use(Vuex);const store = new Vuex.Store({ state: { param1: