小程序
小游戏
企业微信
微信支付
扫描小程序码分享
问题描述:使用在index.wxml中,使用wxsB调用wxsA,然后在wxsB输出wxsA对外暴露的值;
可以看到,控制台输出了好多次,想问下这是怎么回事??
index.wxml中就一句话,没有循环啥的。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这个是正常现象。目前 WXS 可能在“框架认为需要被触发”的时候触发,不太好描述它会被触发的时机。
因而, WXS 函数应当是一个“无状态函数”,即,无论在什么时机被触发,只要输入的参数相同,输出也要相同。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
应该是跟你具体的wxml框架有关,跟wxs的内容无关。测试如下:
我写了一个wxs,放在我的wxml框架里面(内容比较多比较复杂),结果控制台显示wxs每隔5秒钟就重复一次;
我把wxs单独拉出来,新建一个测试项目,控制台显示只运行一次,哈哈。
将文档,https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/01wxs-module.html require函数 的示例代码,“在开发者工具中预览效果”。进行修改,修改成于问题代码一致。发现并不会有重复使用的情况,没理解自己是哪里错了。
修改如下:
index.wxml
<
wxs
src
=
"../logic.wxs"
module
"logic"
/>
logic.wxs
var
tools = require(
"tools.wxs"
);
console.log(tools.wxstext);
tools.wxs
foo =
"'hello world' from tools.wxs"
;
module.exports = {
wxstext: foo,
};
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这个是正常现象。目前 WXS 可能在“框架认为需要被触发”的时候触发,不太好描述它会被触发的时机。
因而, WXS 函数应当是一个“无状态函数”,即,无论在什么时机被触发,只要输入的参数相同,输出也要相同。
我刚才去看了文档,https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/01wxs-module.html,
使用了章节 require函数 的示例代码,“在开发者工具中预览效果”。
将示例代码中的 index.wxml,logic.wxs,tools.wxs,改为和我自己写的一样的内容,
发现示例代码 仅仅只console.log了一次,就很疑惑,示例代码是怎么做到的呢。
应该是跟你具体的wxml框架有关,跟wxs的内容无关。测试如下:
我写了一个wxs,放在我的wxml框架里面(内容比较多比较复杂),结果控制台显示wxs每隔5秒钟就重复一次;
我把wxs单独拉出来,新建一个测试项目,控制台显示只运行一次,哈哈。
将文档,https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/01wxs-module.html require函数 的示例代码,“在开发者工具中预览效果”。进行修改,修改成于问题代码一致。发现并不会有重复使用的情况,没理解自己是哪里错了。
修改如下:
index.wxml
<
wxs
src
=
"../logic.wxs"
module
=
"logic"
/>
logic.wxs
var
tools = require(
"tools.wxs"
);
console.log(tools.wxstext);
tools.wxs
var
foo =
"'hello world' from tools.wxs"
;
module.exports = {
wxstext: foo,
};