目前遇到的需求是:要求Ant Design Pro V5 TypeScript版 打包后,可针对界面上的一些文字,如系统的标题进行动态配置功能。
Ant Design Pro V1时,可以通过在public目录创建一个js文件,里面把配置赋值给window属性,然后在index.ejs里面用script标签引入的方式实现。类似下面这样:
//系统标题
window.config.systemTitle = '系统标题';
最后的效果就是,打包后这个js文件会暴露出来,然后后期想改标题,直接改这个js文件就行,不用重新打包。
但是在V5中,我按照相同的思路做,发现即使放在public目录下,js文件也被编译了,注释没有了,中文部分直接变成乱码。类似下面这样
window.config.systemTitle = '\u7CFB\u7EDF\u6807\u9898';
之前以为是文件类型的问题,我改成了以ts文件的方式引入,它似乎就不会有打包后乱码的情况,打包后ts文件原样输出。
//系统标题
const systemTitle = '系统标题';
export default systemTitle;
但是在部署上线后,直接修改ts文件的内容,比如把标题改成'系统标题2',修改无法生效。
//不生效,还是 系统标题
const systemTitle = '系统标题2';
export default systemTitle;
想请教下大家有没遇到类似的问题,有没有好的解决方案?