一个含有多个变量的js文件,其中的变量如何能被多个文件引用?

描述:
由于是项目升级,不想做太多改动,该js文件里变量原定义形式是:
含有大量的变量声明:
如:
var aaa='变量1';
var bbb='变量2';
var ccc='变量3';
var ddd='变量4';
...

如何将这些公用的变量放到项目(vue项目或者ember项目)的某个位置,使其能被其它文件引用?并如何被引用?

已知一种方法:
可以新建一个common.js,common.js中export一个对象,然后将你全局用的变量放在这个对象里面就行了。
common.js:export default {a:[1,2,3]}
main.js:import commonJs from ./common.js
在mian.js中把commonJs挂在windown上面window.commonJs = commonJs
在组件中就可以commonJs.a访问到这个数组了

但这种方法我需要对原来的代码改称键值对的形式,我觉得这样的改动好像不小,请问还有没有其它方法?

阅读 6.2k
2 个回答

可以这样
common.js

export var a = 1
export var b = 2

main.js

import {a} from './common.js'

你这种方法虽然可行,但是并不是用来做这个事情的。想象一下,假设你在commom.js里面设置全局变量,如果你想在页面改动这个变量呢?难道每个页面重新赋值?再假设如果你想在某个页面改动了这个变量别的页面也想统一响应这个改变呢?所以vuex才是解决你疑问的正确 途径

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题