在 Vue 中,您可以从方法中调用 created() 函数吗?

In Vue can you call the created() function from a method?

所以我在 vue 中制作了一个应用程序,在页面加载时它使用用户的 zip 获取一个 cookie 并使用该 zip 执行搜索,但如果错误,用户也可以更改该 zip 所以我想要能够从常规方法内部调用创建的方法,当他们更改 zip 时 运行,这在 Vue 中可能吗?

Edited: I thought it's not possible but as @RoyJ pointed, apparently, you can but below is the alternative solution instead of invoking the created() hook.

你可以做的是在 methods 属性 下定义另一个函数,你可以在 created 挂钩期间调用它,然后当 zip 发生变化时你可以调用相同的函数。

通过这种方式,您只需在一处定义逻辑,并在需要时重用它。

methods: {
  zipCodeRelatedRequest() {
    // core logic here
  },
  handleZipChange() {
    this.zipCodeRelatedRequest()
  }
},
created() {
  this.zipCodeRelatedRequest();
}

可以使用$options。但正如 Ana 指出的那样,您 应该 定义一个 created 调用的方法。调用 created 混淆了它的目的。另一个方法的命名方式应使其目的明确。

示例使用 $options,只是为了证明可能性:

new Vue({
  el: '#app',
  created() {
    console.log("Created");
  }
});
<script src="https://unpkg.com/vue@latest/dist/vue.js"></script>
<div id="app">
  <button @click="$options.created">Run</button>
</div>