Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 聚合物2定义全局变量_Javascript_Polymer_Polymer 2.x - Fatal编程技术网

Javascript 聚合物2定义全局变量

Javascript 聚合物2定义全局变量,javascript,polymer,polymer-2.x,Javascript,Polymer,Polymer 2.x,我最近开始使用Polymer 2.0,到目前为止我很喜欢它。 我习惯于将Angular与typescript结合使用,我喜欢定义全局变量是多么容易 想要的结果: 假设我在登录页面中有一个名为“Username”的变量。 var用户名当前为“Guest”,因此在我的欢迎页面中有消息“hellogest!”。登录页面中的用户名从guest=>not-a-guest更改 欢迎页面现在显示:你好,不是客人!“ 有没有一种方法可以在不传递变量的情况下这样做 ?因为每次我想使用username属性时,我现在

我最近开始使用Polymer 2.0,到目前为止我很喜欢它。 我习惯于将Angular与typescript结合使用,我喜欢定义全局变量是多么容易

想要的结果: 假设我在登录页面中有一个名为“Username”的变量。 var用户名当前为“Guest”,因此在我的欢迎页面中有消息“hellogest!”。登录页面中的用户名从guest=>not-a-guest更改 欢迎页面现在显示:你好,不是客人!“

有没有一种方法可以在不传递变量的情况下这样做 ?因为每次我想使用username属性时,我现在都必须像上面那样传递用户名。(因此,如果我需要子组件的子组件中的用户名,我现在也必须将用户名传递给所有家长)。当然,这是关于用户的,所以在本例中,本地存储/会话存储是可以的,但这只是一个示例。我想使用全局定义来定义其他内容,而将其保存在本地存储中并不理想

我发现了很多聚合物1解决方案,但我很想在全聚合物2.0中应用


非常感谢!

一个选择是使用mixin类,并将其扩展到您需要的任何组件中。请阅读更多信息。

我想了一下,并制作了一个。 用法:

//登录组件
//定义全局变量
//欢迎页面
//使用全局变量
有一个元素可以用来完成您创建的内容

// Login component
// Define global variable
<brum-global-var key="username" value="{{username}}"></global-variable>

// welcome-page 
// Use global variable
<brum-global-var key="username" value="{{username}}" readonly></global-variable>