gpt4 book ai didi

javascript - 尝试通过 Vue.js 中的渲染传递 Prop 并观看它们

转载 作者:数据小太阳 更新时间:2023-10-29 04:41:42 26 4
gpt4 key购买 nike

我在使用 vue.js 中的 CreateElement/render 将 Prop 从父级向下传递到创建的子级时遇到问题,然后再观看它。

这是我的父组件

Vue.component('my-drawing', MyDrawing)

new Vue({
el: '#drawing',
mounted() {
Bus.$on('emitColorSelection', (emitString) => {
console.log("inside socket.js/my-drawing and emitString is ", emitString);
this.useColor = emitString;
console.log('inside socket.js/my-drawing and this.useColor after set is ', this.useColor);
})

},
data() {
return {
channel2: null,
canvases: [],
useColor: 'rgba(255, 0, 0, 1)'
}
},
render(createElement) {
return createElement(MyDrawing, {
props: {
useThisColor: this.useColor
}
})
}
});

所以你可以在这里看到,我获取了一些总线的 emit 值,然后将其传递给 useColor。然后我想将此值作为 useThisColor 传递给我的渲染函数。

这就是 child 。

<template>
//my template stuff
</template>

<script>
//stuff
watch: {
useThisColor (n, o) {
console.log("useThisColor watch, ", n, o) // n is the new value, o is the old value.
}
}
//stuff continues

所以这个watch标签不输出。我也试过将模板中的 Prop 置于无效状态,并尝试将其输出到 Updated: 标签上。我还尝试使用引号在父项中设置 Prop 。到目前为止没有任何效果,我有点困惑。如果有人有任何想法,请告诉我。

最佳答案

我认为这里的问题是您根本没有在 MyDrawing 组件上定义属性 useThisColor

这是一个 example .

关于javascript - 尝试通过 Vue.js 中的渲染传递 Prop 并观看它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44080844/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com