小编alf*_*var的帖子

带有 onMount 变量的 Svelte 反应式语句

我正在尝试使用“active”类来设置我的网络项目当前活动选项卡的样式。为了定位我正在使用的选项卡元素

    onMount(() => {
    const links = document.querySelectorAll(".topnav a");
});
Run Code Online (Sandbox Code Playgroud)

然后我使用反应式语句来设计适当的元素,如下所示

    $: {
    links.forEach((link) => {
        if (link.getAttribute("id") === $page.url.pathname) {
            link.classList.add("active");
        } else {
            link.classList.remove("active");
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

但是,我无法将links变量共享给我的反应语句。我还尝试document.querySelectorAll放入我的反应语句(根本不使用 onMount),它完美地工作,直到我重新加载页面。对此的传统方法是什么?

scope reactive svelte sveltekit

2
推荐指数
1
解决办法
2684
查看次数

推送到数组会删除旧数据(React Native)

我正在尝试将文本输入推入数组中。当我修改输入文本并推送它时,数组会在推送之前被擦除(不会在 console.log 中显示我之前的推送)。我缺少什么?

const [text, onChangeText] = React.useState('Useless Text');

let chatHistory = [];

function logHistory(text) {
  chatHistory.push(text);
  console.log(chatHistory);
}

return (
  <View style={styles.container}>
    <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
      <TextInput
        style={styles.input}
        onChangeText={onChangeText}
        value={text}
      />
      <Button title={'Ask the computer...'} onPress={() => logHistory(text)} />
    </View>
  </View>
);
Run Code Online (Sandbox Code Playgroud)

javascript arrays react-native

1
推荐指数
1
解决办法
972
查看次数

标签 统计

arrays ×1

javascript ×1

react-native ×1

reactive ×1

scope ×1

svelte ×1

sveltekit ×1