Я бы сказал, всегда предоставляйте значение по умолчанию, которое соответствует указанному вами типу: значительно упрощает анализ.Здесь то, что вы ищете, будет noop-функцией (иначе говоря, функцией, которая ничего не делает):
props: {
clickFunction: {
type: Function
default: () => {}
}
}
Затем вы можете использовать this.clickFunction()
в своем коде, не проверяя его сначала с защитой: это всегда функция.Убедитесь, что вы не перепутали значение по умолчанию для Object
реквизита, то есть пустого объекта:
props: {
someObject: {
type: Object
default: () => ({})
}
}
В Vue реквизиты Object
и Array
должны иметь своизначение по умолчанию, возвращаемое функцией, чтобы гарантировать, что они различны для каждого экземпляра компонента (что, по-видимому, не требуется для Function
реквизита, но документы действительно не совсем ясны по этому поводу).