mixin 方法在创建的组件挂钩中未定义
mixin method is undefined in created hook of component
<template>
<section>
<a href="#toper" class="cd-top" v-on:click="getTemplates()">Top</a>
</section>
</template>
<script>
import api from '../../server/api.ts';
export default {
name: 'Questions',
mixins: [api],
data() {
return {
templates : getTemplates(),
};
},
created() {
// **[Vue warn]: Error in created hook: "ReferenceError: getTemplates is not defined"**
this.templates = getTemplates();
},
};
</script>
如果我单击 link,getTemplates 函数工作正常,但在 Vue js 组件的所有生命钩子中出现错误。
提前感谢您的帮助!
您忘记了 this
函数。加载 mixin 的效果就好像其中的内容在您的实际组件中一样。您需要像调用本地函数一样调用这些方法。始终与 this
.
所以改成:
created() {
this.templates = this.getTemplates();
},
<template>
<section>
<a href="#toper" class="cd-top" v-on:click="getTemplates()">Top</a>
</section>
</template>
<script>
import api from '../../server/api.ts';
export default {
name: 'Questions',
mixins: [api],
data() {
return {
templates : getTemplates(),
};
},
created() {
// **[Vue warn]: Error in created hook: "ReferenceError: getTemplates is not defined"**
this.templates = getTemplates();
},
};
</script>
如果我单击 link,getTemplates 函数工作正常,但在 Vue js 组件的所有生命钩子中出现错误。
提前感谢您的帮助!
您忘记了 this
函数。加载 mixin 的效果就好像其中的内容在您的实际组件中一样。您需要像调用本地函数一样调用这些方法。始终与 this
.
所以改成:
created() {
this.templates = this.getTemplates();
},