vue 改变一个地方, 其他地方自动渲染改变,该如何实现呢?

我想做一个自动切换语言的页面,
目前遇到的问题便是数据改变了, 但是view无法渲染。
思路:
在vuex中创建了
store,state,getter跟mutations
代码

 //  state
 export default {
  currentlanguage: 'cn', //  当前语言
}
 //  getters
export default {
  getlan: (state) => {
    return state.lan
  },
  getcurrentlanguage: (state) => {
    return state.currentlanguage
  }
}
import * as types from './mutation-type'
export default {
  [types.SET_LAN] (state, currentlanguage) {
    console.log(currentlanguage)
    state.currentlanguage = currentlanguage.lan
  }
}

app.vue 中调用
图片说明

index.vue 中调用
图片说明

得到的结果
图片说明
出来中文的版本完全没问题

图片说明

切换为英文的时候, 就上面导航变了, 还有state的数据也改变了, 但没有渲染出来,
要如何才能达到预想的效果呢?

2个回答

后面用i18n完美解决!

this.$forceUpdate()试一下

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
vue数据改变页面不渲染问题解决方案
data() { return { tableData:[ { id:0, tip:false} ], data:{ name: 'Lisi' } } }, 类似于以上的数据 尝试方案1 this.$set(object...
vue(数据改变,DOM不渲染问题)
  1、组件内部,属性值地址空间内引用地址改变,DOM不能渲染。      问题举例:this.items = [[],[],[],[]]   1、在items 中,修改任意一项数组中的值,DOM是不会更新的, 2、解决方案: this.items = [...this.items]。通过解构赋值,重新给items赋值。 2、组件之间传值,父组件传data改变,子组件未更新。 ...
如何自动改变图片大小!
我用ASP写了一个上传新闻的系统,功能是实现了,可是上传图片的时候,原始图片是多大传上去就多大,有的图片宽度超过网页表格的宽度,把网页撑得很大,变形了。如何能实现上传的图片自动按比例缩小成一定尺寸的图片?
struts2到struts1改变的地方
[color=red]struts1 struts2 Action Action ActionForm Action/POJO's ActionForword Result struts-config.xml struts.xml ActionServlet ...
2009考研新改变,改变的地方可能是出题的地方
2009考研新改变,一般改变的地方可能是出题的地方
c# 实现自动改变背景
C# 动态 自动 改变背景C# 动态 自动 改变背景C# 动态 自动 改变背景C# 动态 自动 改变背景C# 动态 自动 改变
请问如何实现改变Picture的背景颜色呢?
我做了一个DIALOG的应用程序,放了两个控件,一个Button还有一个是Pictur,想实现点击Button控件,显示Picture的背景颜色为红色!!
UIImageView 渲染模式改变Image的渲染颜色
UI有的时候给的图的颜色不对或者说只给了一套图,在其他地方用的图的底色不一样,ios 7.0之后,UIImage有一个新增方法:imageWithRenderingMode: 通过它可以设置图片的渲染模式,其中参数部分UIImageReenderingMode有3个枚举对应不同的渲染模式 UIImageRenderingModeAutomatic  // 根据图片的使用环境和所处的绘图上
VC++如何自动改变焦点
[img=https://img-bbs.csdn.net/upload/201405/17/1400288445_834911.png][/img]rnrn只有两个窗口,在游戏宣言里建立一个文本编辑框,在年龄身高那里是用摆界面的工具,问题是,让我在游戏宣言中输入东西时,焦点在游戏宣言这里,正常,但是当我再点击年龄输入时候,游戏宣言也会同时输入,各位大神怎么破
如何自动改变打印纸张设置
我做了一个外贸系统 , 里面有很多的单证 , 每一张单证的大小是不一样的的 ,每次在打印之前都要手工改变打印设置 ,很麻烦那位高手有关自动改变设置的的方法啊当选一张报表的时候.
如何自动改变form的大小?
我最近在做一个看图软件,需要窗体随着图片的大小自动改变,就像acdsee一样,请帮帮忙
如何自动改变标题长度?
如果一个标题很长,而输出的地方较小,如何能够部分显示标题呢? rn比如说: "网页设计的视觉构成系列--点的视觉...."rn
如何改变一个form的边框线颜色呢?
rn如何改变一个form的边框线的颜色呢?
vue 底部导航状态改变
HTML: <div class="footer"> <div class="footer-nav" v-for="(item, index) in footer" @click="switchTo(index)"> <img v-if="index == idx" :src="item.active_url"> <i...
vue点击改变样式
data里isActive:-1,method里checkedItem(index){ this.isActive=index;},页面里<div v-for="(item,index) in nameoptions" v-bind:class="{active:index==isActive}" @click="checkItem(index)>{{item.name}}</...
Vue之改变布局
                                        Vue之改变布局 我们在购物的网站经常会看物品列表可以切换显示模式。也就是有两种布局可以来回切换,看用户喜欢哪种来选择。今天我们来看看vue怎么实现简单的布局切换。 效果图: 点击图形就只显示图片,点击图形加文字就多显示出文字。 其实实现起来很简单,绑定一个数据集,里面有图片路径和图片文字。用两个div显示...
Vue 改变/动态改变 title
目的:vue改变 title。 分两种情况, 第一种你事先已经定义好了 title,比如 首页 啊什么的, 第二种,是你无法确认的,比如一个看文章的页面,这个 title 就是文章的标题,你事先无法知道用户获取的是那个文章。 第一种: 1-1、首先我们需要给路由设置 title 1-2、在main.js 文件写入下面的代码 // 根据路由设置标题 router.befo...
Vue监听路由改变
Watch监听: js代码: //监听路由改变 watch: { '$route.path':function (newVal,oldVal) { console.log(newVal,oldVal); } } 注意:路由地址改变事件,keyup监听不了,只能用watch Computed计算: js代码: data: { firstName: 'Foo', ...
实现一个程序中改变文件名的功能??????(如何改变???)
我的程序中需要改变保存到磁盘上的文件如:1.bmp 改为 temp.bmp 传给处理的函数,用完之后再改变成 1.bmp 。rn 简单的说就是 改变磁盘上的文件的文件名。 请问各位高手,如何实现!!??
如何改变对话框的颜色呢?
请问一下如何改变对话框的颜色呢?一个很简单的问题,可惜我是菜鸟,请高手来帮帮我!
如何改变FormView的背景色呢?
在程序中,我想让我的formview的背景色成为我指定的背景色,如白色。还有,在这个view中,我放置了一些static的文本,我也希望他们的背景色是白色的,而不是缺省的灰色。rnrn其实,我是想把这个formview打印出来,可是打出来一片黑色。我想,这可能是由于打印机是黑白的原因。于是,我想,把全部的背景均设为白色,就可以打印出我想要的东西了。rnrn请各位大侠指点一下。
如何改变按钮的文字颜色呢?
请问,如果要让按钮按下去的时候按钮上的文字的颜色改变,应该添加什么代码呢?rn或者改变按钮的背景颜色也可以。rn我试过写command1.backcolor=&H......rn但按下去没有任何反应。rn请高手指点啊!!!谢谢!!
如何改变这个值呢?
例:rn显示rnrn点击“显示"后,pid的值就成了001rn我想在程序中将其值改为空或其它的,该如何写呢?rnrnRequest.QueryString["pid"]=null;rnrn报错了
如何改变工具栏的长度呢?
我想在工具栏中加入一个Slider控件。按照网上的方法确实加进去了rn但是因为slider控件太长,所以加入的Slider控件只显示了很少的一部分rn工具栏就是还是5个按钮的长度(原来4个,slider是第五个)rn有什么方法可以改变它的长度呢?让Slider的控件完全显示并且rn不改变原有的4个按钮的大小。rnrn现在有的笨办法是加几个没用的按钮,就会变长,因为Slider会把没用rn的按钮挤出去,所以也不影响使用,但是这样太笨了。应该有简单的办法吧rnrnm_lookToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_BOTTOM | rnCBRS_FLOAT_MULTI| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY |TBSTYLE_WRAPABLE)||rnrn上边是创建工具栏的时候用的属性,是从这里更改么?还是有什么函数呢?
渲染状态改变消耗详情
参考: https://computergraphics.stackexchange.com/questions/37/what-is-the-cost-of-changing-state http://media.steampowered.com/apps/steamdevdays/slides/beyondporting.pdf
我该怎么改变字体呢?
谁能帮帮我?
vue中页面数据改变组件不重新渲染
页面中引用组件 additional-entrust.vue,当界面传的entrustGold值 改变时,组件状态不重新渲染 代码如下: <div class = "test"> <additional-entrust :entrustFlag="entrustFlag" :eachIncrease=...
Vue监听当数据发生改变v-for渲染完成
1、Vue.nextTick(callback),当数据发生变化,更新后执行回调。 2、Vue.$nextTick(callback),当dom发生变化,更新后执行的回调。 例如: this.list.push(1); this.nextTick(function(){ alert('数据已经更新'); }); this.$nextTick(function()
Vue中this.$forceUpdate()解决 数据改变但未渲染的问题
*** ## 项目中问题: *** 在购物车管理界面,可以选中复选框进行结算,但是切换到完成界面, 复选框就选不中,但是显示的数据是已经改变了,就是页面没渲染! *** ## 解决方法: *** 运用 this.$forceUpdate() 强制刷新(因为数据层次太多,需手动强制刷新。) ...
改变该窗口的标题
本题有两个command控件"执行"和"退出",两个label框"label1"和"label2",两个textbox "text1"和"text2"rn已有一个模块module1其声明为:rnOption ExplicitrnPublic Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongrnPublic Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Longrnrnrn现要在form1命令按钮"执行"的Click事件编写代友,实现下述功能:rn调用findwindow,查找指定标题名称的应用程序窗口的句柄:调用setwindowtext,改变该窗口的标题
怎么才能实现对窗口的部分重绘,其他地方不发生改变。
今天在做一个程序的时候,非常纠结一点,我在窗口上放了四个button,又在附近输出了一些文字。 请问我该使用什么方法,让窗口那里的文字消失。我试了InvaliddateRect和Invaliddate都实现不了。rn如果单纯的将整过窗口重绘的话我的Onpaint消息响应里就会有很多代码。而且整个窗口重绘时那些按钮控件也全部消失了,这样我就还要在创建一次这些按钮。 能不能有一些简单的办法来实现这个功能。
vue列表渲染,以及鼠标点击改变样式的问题
在实际项目中,我们进场会遇到鼠标点击该表某个DOM元素的样式,在原生的js或者jquery中,我们会比较熟练的实现这个需求,但是在vue中怎么实现呢? 直接操作DOM?NO!NO! 既然我们的项目使用了vue,为什么还有本末倒置的操作DOM呢,你只要记住vue的核心是什么,这个就容易实现了,比我们操作原生的DOM要容易多;那么怎么操作呢? 废话少说直接上代码: 这是html模板 <...
如何改变永久改变背景色?
在CXXXView中怎么永久改变背景色,不要在onpaint中话,这样当要重画时会覆盖掉View上的其他东西.我先想overload prewindow.rnBOOL CTest1View::PreCreateWindow(CREATESTRUCT& cs)rnrn // TODO: Modify the Window class or styles here by modifyingrn // the CREATESTRUCT csrnCBrush bush(RGB(0,0,0));rnCDC dc;rn cs.lpszClass=AfxRegisterWndClass(CS_DBLCLKS|CS_HREDRAW|CS_VREDRAW ,AfxGetApp()->LoadStandardCursor(IDC_CROSS),(HBRUSH)::SelectObject(dc,&bush),AfxGetApp()->LoadStandardIcon(IDI_WINLOGO));rn rn return CView::PreCreateWindow(cs);rnrn 但是这样View显示就不正常,不知道为什么?可能是窗口风格没设置好???
vue实现路由切换改变title
由于vue项目通常是单页应用,因此在入口文件index.html只有一个title,单页所展示的若干页面只是随着路由的切换而在同一个index.html上不同的渲染而已,因此此时的title属性是不会随着页面的切换而变更的那么想实现路由切换title变换可以通过vue-router的导航守卫来实现,最简单的的目录结构可如下所示├── index.html ├── main.js ├── api │...
vue滑动条实现圆颜色的改变
用input做一个滑动条,vue的监听事件来控制颜色的变化,可是不知道怎么利用循环,可以直接通过newVal数值的变化来直接操作color数组....后来发现可以通过控制RGB来直接改变颜色好像更简单... <!DOCTYPE html> <html> <head>     <title></title>     <scr...
自动改变宽度的ComboBox
可根据绑定的数据源大小自动改变下拉框内容的宽度!
自动改变油的高度
各和高手请帮我写一段代码,我不会写,在线等待.rn我给公司开发一个油罐保税系统:当油的体积,油温度,油位,重量变化时,有个油罐形里的油也要起相应的变化.如:油罐内的油用黄颜色表式,油的高度由1米上升到3米,黄颜色部分也由1米的地方添冲到3米的地方..
结构体数组值自动改变
一个程序,首先给结构体成员node.name[]数组赋了值,之后在对其它结构体如load.name[]进行操作时,发现node.name[]数组的前8个名字被改变了,后面的没变。为何没有对node.name[]进行操作,它的值会自动改变?
文件句柄为什么自动改变????
szTif="c:\\aaaa\aaaaaaaa\aa\a.tif";rn以下为源代码的一段的一部分,在执行完sprintf以后,hTif值自动变化,导致错误。如果我改变路径以后,别处的sprintf语句执行完后,相应句柄值也发生变化导致错误。 求教各位高手指点,rnrn hTif = CreateFileA(szTif,rn GENERIC_WRITE,rn FILE_SHARE_READ,rn NULL,rn CREATE_ALWAYS,rn FILE_ATTRIBUTE_NORMAL,rn NULL);rn rn rn if(hTif == INVALID_HANDLE_VALUE)rn rn sprintf(buf,"Create File (%s)Failed. %d",szTif,GetLastError());rn writelog( buf );rn return 0 ;rn rn rn sprintf(buf,"Create File(%s) Succeed. %d",szTif,GetLastError());rn writelog( buf );rn rn init_stream_data(&sdata);rnrn i=sr_create_tiff_header(hTif);rnrnvoid writelog(char *buf)rnrn log = fopen("c:\\pt.log","a+");rn if(log==NULL)rn rn return;rn rnrn fprintf( log, "%s\n", buf );rn fclose( log );rn return;rn
背景音乐不能自动改变
我在我的数据中加入一段代码来实现背景音乐,但不能自动改变或者每次进入时改变或在一定范围内自动选择.请各位指点指点.rnrn窗体中插入ActiveX控件“Windows Media Player”。rnrn在数据库目录下,存放音乐文件01.MP3、02.MP3、03MP3、04MP3。rnrn再编辑代码如下:rn Private Sub Form_Load()rn Dim stappname As String rn stappname = Application.CodeProject.Path & "\01.MP3"rn ‘音乐文件和数据库放在同一目录下的。改为\*.MP3"也不能自动更改音乐文件.rn mPlayer.filename = stappnamern ‘因为已经设成了自动播放rnEnd Subrnrnrnrn Private Sub 命令6_Click()rn On Error GoTo Err_命令6_Clickrn If mPlayer.Playstate = 2 Then 'mplayer是插入的媒体播放器的名字。rn‘mplayer.playstate表示当前播放状态,0-停止,1-暂停,2-播放rn mPlayer.pause rn 命令6.Caption = "继续播放" rn rn Elsern mPlayer.play rn 命令6.Caption = "暂停播放"rn End Ifrn rnExit_命令6_Click:rn Exit SubrnrnErr_命令6_Click:rn MsgBox Err.Descriptionrn Resume Exit_命令6_Clickrn rnEnd Subrn
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法