让现有vue前端项目快速支持多语言 - 用.net core程序快速替换中文为资源Key,咱不干体力活

前言

这是我第一次发博客,2020年立个flag以后要经常发。

最近应公司上层要求,需要将现有项目尽快支持多语言,而中文内容可以找专业人员翻译。那么咱们说干就干,首先我们项目的前端是用vue写的spa程序且组件方面用的element ui,那么自然而然想到用vue官方推荐的vue i18n,我快速过了下i18n整个Guide官方文档,看来使用很简单,主要步骤就是:

  • npm 安装vue i18n插件
  • 定义多语言资源字典对象
  • 实例化vue i18n实例
  • vue实例上挂载vue i18n 实例

这里有一个最简单的实例

相信大家都看就懂,但大家有没想过,我前面说了公司要求是把现有项目尽快支持多语言,那说明我们的项目已经存在大量的代码。duang,尼玛,那不是做“定义多语言资源字典对象”是一个体力活? 要知道,我们这个前端项目至少有成百上千个页面,如果让我一个一个的翻译里面的中文跟换成vue i18n要求的$t('key'),那估计我跟团队得累死呀!!!所以,为了不干体力活,就有了这篇文章。

先随便拿一个前端文件看看最终的效果图:

自动替换前:
让现有vue前端项目快速支持多语言 - 用.net core程序快速替换中文为资源Key,咱不干体力活_第1张图片

自动替换后:
让现有vue前端项目快速支持多语言 - 用.net core程序快速替换中文为资源Key,咱不干体力活_第2张图片

感觉如何?最终的代码点这里

下面我们来详细介绍下实现的各个步骤

要想替换前端代码为vue i18n的语法,就涉及到自己编写一套程序来实现准确替换,在替换之前,我们需要考虑:

  • 可以将