gpt4 book ai didi

vue.js - 如何将数据对象的值放入另一个数据对象vueJS

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:16 26 4
gpt4 key购买 nike

这是我的代码:

data () {
return {
msg: '',
rgbValue: '',
newColor: {
color: this.msg
}
}
}

此代码无效。我想将 msg 的值放入我的对象 newColor 中。有没有人有办法解决吗?

下面是补充代码:

data () {
let msg = '';
return {
msg: msg,
rgbValue: '',
newColor: {
color: msg
}
}
},
components: {
HeaderComponent: require('./HeaderComponent.vue')
},
methods: {
msgFunc: function () {

colorsRef.push(this.newColor);

const app = document.querySelector('#app');
const rgbValueContainer = document.querySelector('.rgb-value');

if (this.msg[0] !== '#') {
this.msg = '#'
}
app.style.backgroundColor = this.msg


function convert(hex) {
hex = hex.replace('#', '');

const r = parseInt(hex.length == 3 ? hex.slice(0, 1).repeat(2) : hex.slice(0, 2), 16);
const g = parseInt(hex.length == 3 ? hex.slice(1, 2).repeat(2) : hex.slice(2, 4), 16);
const b = parseInt(hex.length == 3 ? hex.slice(2, 3).repeat(2) : hex.slice(4, 6), 16);

return 'rgb(' + r + ', ' + g + ', ' + b + ')';

}

this.rgbValue = convert(this.msg)
rgbValueContainer.style.opacity = '1'

this.msg = '#'
}
<section class="input-container">
<label for="inputLabel">Type your HEX color | Click & Press enter</label>
<input type="text" id="inputLabel" v-model="msg" @change="msgFunc" @click="sharpStr">
</section>

你可以看到在 msgFunc 之后,推送到我的数据库,问题就在这里,他推送正确的对象,但他没有更新颜色的值

最佳答案

data 方法返回之前,您将无法访问像 this.msg 这样的数据属性。

只需在 return 语句之外设置该值:

data () {
let msg = '';

return {
msg: msg,
rgbValue: '',
newColor: {
color: msg
}
}
}

如果您需要 newColor 属性始终反射(reflect) this.msg 的值,您可以改为将其设为计算属性:

data () {
return {
msg: '',
rgbValue: '',
}
},
computed: {
newColor() {
return { color: this.msg }
}
}

关于vue.js - 如何将数据对象的值放入另一个数据对象vueJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46491468/

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