变量数据丢失的技术原因
Technical reason of data loss of variable
我正在使用聚合物。
聚合物组件绑定到处理其逻辑的脚本。它看起来像这样:
<polymer-element name="my-component">
<template></template>
<script src="my-component.js"></script>
</polymer-element>
该组件是通过将对象传递给 Polymer
函数来生成的。此对象描述组件,并且必须至少包含一个名为 ready
的属性。这是一个每次生成组件时都会触发的函数,例如,当脚本第一次被调用时,以及每次在初始调用之后使用它时。
这是我的my-component.js
var Timeline;
function loadTimeline(){
return System.import('balance/timeline/TimeLineModule')
.then(function(TM){
Timeline = TM.service;
});
};
loadTimeline()
.then(function(){
var element = (function
var component;
return{
ready: function(){
var self = this;
component = this;
methodThatUtilizesTimelineModule();
}
}
})();
Polymer('day-view',element);
})
.catch(function(e){console.error(e)});
我现在的问题是,只要第一次调用脚本,一切正常。但是,一旦我离开组件并调用另一个组件,然后返回到属于上述脚本的组件,Timeline
将被undefined
,并且只有在我从组件对象中的某个地方再次调用loadTimeline()
时才能再次使用。
所以我知道问题是每当我离开调用该脚本的组件时,我的变量的值都会丢失,但我不知道为什么会这样。
我对聚合物很陌生,但也许你可以使用全局变量?
<polymer-element name="app-globals">
<script>
(function() {
// these variables are shared by all instances of app-globals
var firstName = 'John';
var lastName = 'Smith';
Polymer({
ready: function() {
// copy global values into instance properties
this.firstName = firstName;
this.lastName = lastName;
}
});
})();
</script>
</polymer-element>
然后像这样使用它
<polymer-element name="my-component">
<template>
<app-globals id="globals"></app-globals>
<div id="firstname">{{$.globals.firstName}}</div>
<div id="lastname">{{$.globals.lastName}}</div>
</template>
<script>
Polymer({
ready: function() {
console.log('Last name: ' + this.$.globals.lastName);
}
});
</script>
</polymer-element>
请参阅有关聚合物项目的 API 开发人员指南
相关文章:
- 用程序搜索JQuery数据表中的文本
- 要求输入在数据列表中
- 正在将数据主题添加到所有项目
- 函数参数中的数据与指定变量之间的任何性能差异
- 在VanillaJS中模拟模型双向数据绑定
- CSS-如何定位内容数据标题
- 使用电话间隙在Android应用程序中显示SQL Lite的数据
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 序列化数据属性中对象的最可靠方法
- 如何将JSON数据导入我的ejs模板
- 不显示带有本地json文件数据的谷歌地图脚本
- 如何将json数据显示为html
- 变量数据丢失的技术原因
- 使用 d3.js 可视化数据组的数据技术
- 企业元数据应用的 HTML 技术选择
- Titanium:安卓设备上的数据加密和解密技术
- 是否有技术可以让设备访问和使用数据,而无需下载或流式传输
- 加速Javascript的技术或数据结构
- 是否有任何技术可以将HTML结构与底层数据分离
- 使用HTML5技术操作和上传表单文件数据