vue:转发子组件中的默认属性值

时间:2018-02-22 09:48:06

标签: vuejs2 vue-component

我有一个Vue(2.x)应用程序。我目前正试图将一些属性从父组件转发到子组件。由于我不总是需要设置这些值,因此我还添加了一个默认值:

组件脚本:

props: {
    ...
    center: {
        type: Object,

        default: () ⇒ {
            Object.assign({
                latitude: 50,
                longitude: 50,
            });
        },
    },
},
data() {
    return {
        localCenter: this.center,
    };
},

组件模板:

 <google-map
     :center="localCenter"
     ...
 </google-map>

在这种情况下,如果尚未设置属性localCenter,我希望latitude: 50, longitude: 50等于center。但价值未定义。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

尝试返回一个对象。为什么让事情变得复杂?

<强>码

onComplete(responseFuture) {
case scala.util.Success(response) => 
 val cookies = response.get.headers.collect {
          case c: `Set-Cookie` => c.cookie.content
          }
complete(OK,"response")

case scala.util.Failure(ex) => 
 complete(InternalServerError,"error")
}

working fiddle using default

and the same thing passing a prop

答案 1 :(得分:0)

您只是错过了从默认值返回对象:

    default: () ⇒ {
        return Object.assign({
            latitude: 50,
            longitude: 50,
        });
    },