我认为小程序的设计是,跳转到新的页面时,仅仅是会把Page()压入栈中,但是Page()之外的部分是不会重新声明.
const app = getApp()
let that;
let count = 1;
function test(){
count++;
console.log(count)
}
test();
Page({
data: {
btntext:'setData测试',
},
test:function(){
that.setData({btntext:'setData成功!'})
},
onLoad() {
that = this;
},
onShow(){
this.setData({nodeid:that.__wxExparserNodeId__,btntext:'setData测试'})
}
})
这是我测试的一段代码,在初次渲染之后,count的输出值是会被累加的.(意味着外部的代码有被运行到)但是之后无论跳转到什么页面,这个count的值就不会继续累加了.由此可得除了第一次渲染会初始化Page()外部的变量,之后的跳转就都不会再次声明这个变量了.