在我计算的一个信号中,我需要读取文件上的数据,这是一个运行时函数。由于我需要计算出的信号在客户端上运行,所以我需要弄清楚如何输入变量。我试着这样做:
import {Â render } from "preact";
import {Â signal, computed } from "@preact/signals";
const text = signal('This is changed on client');
const textAndData = computed((num) => {
const data = `And this data is read on the server: ${num}`
return `${text.value}. ${data}`;
});
function Result() {
const num = 3
return (
<>{textAndData(num).value}</>
);
}
render(<Result />, document.getElementById("app"));
Playground
这会产生错误:
TypeError: textAndData is not a function
。有办法做到这一点吗?我可以看到,如果我能在模块内部创建信号(即。
useSignal
,
useComputed
)那我就不用担心了。但为了信号管理,我想声明模块中的所有信号并导出它们。