我正尝试在我的vue项目中使用脚本设置。
在使用脚本设置之前,我的脚本如下所示:
<script>
import Layout from '../containers/Layout.vue';
import { reactive, toRefs } from 'vue'
export default {
name: 'Home',
setup() {
const state = reactive({});
return {
...toRefs(state),
};
},
components: { Layout, Layout }
}
</script>
现在我有了这样的想法:
<script setup>
import Layout from '../containers/Layout.vue';
import { reactive, toRefs } from 'vue'
const state = reactive({});
const props = defineProps({
header: String
})
</script>
我不确定的是在这种情况下如何使用toRef?在第一种情况下,我们返回变量,这样我就了解了使用...toRefs(state)
的方式。但是现在,我如何使用它?还是不再需要它了?谢谢
2条答案
按热度按时间w8f9ii691#
script setup
隐式转换变量定义到
在
script setup
中没有return {...dynamicValue}
的替代品,script setup
仅适用于常见用例,这需要将其与script
组合。return {...toRefs(state)}
没有很好的作用,因为得到的refs在脚本块中没有使用,即使使用,通常也被定义为单独的无功值,而不是state
对象:如果需要将这些值作为单个对象处理,可以将它们组合在一起:
对于
script
和script setup
,其工作方式相同。g2ieeal72#
如果你想在脚本设置中直接访问
state
React的值,你可以使用对象重构,如下所示:然后,您可以直接在模板中访问值
但是,这是非常不方便,必须重新键入所有属性