在数据中设置初始值时不读取VueJs道具

时间:2019-02-07 06:23:47

标签: laravel vue.js vuejs2

最近,我在如何在本地数据属性中设置初始值方面进行了很多努力。我在Vue.js中使用Laravel

我的组件下面有这段代码

props: {
            user: '',
            dates: {}
        },
        data() {
            return {
                bloodTypes: {},
                bloodComponents: {},
                data: {
                    order_date: this.dates.order_date,
                    order_details: []
                },
            }
        },

我正在尝试将props'dates'的值添加到局部变量中。

order_date: this.dates.order_date

返回未定义。尽管您可以在下面的图片中看到道具已经初始化。 enter image description here

  

我想知道如何将props值获取到我的本地数据中   变量。

6 个答案:

答案 0 :(得分:1)

尝试一下:

watch: {
  dates: {
    handler(val){
     this.data.order_date = val.order_date;
  },
  deep: true
 }
}

答案 1 :(得分:0)

如何使用计算代替?

    props: [
        'user',
        'dates'
    ],
    data() {
        return {
            bloodTypes: {},
            bloodComponents: {}
        }
    },
    computed: {
        data: function() {
            return {
                order_date: this.dates.order_date,
                order_details: [] <= should be changed to something dynamically changed object
            }
        }
    }

答案 2 :(得分:0)

问题是您的Tasks 2 1 2 1 4 2 3 2 3 4 声明不正确。

    date = pd.read_csv('date.csv')
    task = pd.read_csv('tasks.csv')
    model = Sequential()
    model.add(LSTM(24,return_sequences=True,input_shape=(date.shape[0],1)))
    model.add(Dense(1))
    model.compile(loss="mean_squared_error", optimizer="adam")
    model.fit(date, task,  epochs=100,  batch_size=1,  verbose=1)

将对象语法用于props时,每个键都是prop名称,值是数据类型(例如props: { user: '', // <-- DON'T DO THIS dates: {} // <-- DON'T DO THIS } props等):< / p>

String

...或对象初始化程序(允许您指定数据类型和默认值),如下所示:

Number

demo

答案 3 :(得分:0)

答案 4 :(得分:0)

我终于用来解决了这个问题,我更改了一些变量名,以免引起混淆。看来您需要监视道具才能操纵它。

props: [ 'user','blood_components', 'blood_types', 'current_date'],
        data() {
            return {
                list: {
                    order_date: '',
                }
            }
        },
        watch:{
            current_date: function() {
                let self = this
                self.list.order_date = this.current_date
            }
        },

答案 5 :(得分:0)

聚会晚了一点,但我想我会在处理异步数据时分享我的解决方法:

// in the parent component
<template>
    <child :foo="bar" v-if="bar" />
</template>

然后,您可以安全地按照指南的建议使用props初始化数据值的方法:

props: ['initialCounter'],
data: function () {
    return {
       counter: this.initialCounter
    }
}

编码愉快!