【发布时间】:2021-07-27 20:05:52
【问题描述】:
我有一个从这里使用的全局过滤器:https://www.npmjs.com/package/@vuejs-community/vue-filter-date-format 来格式化我可以从 html 调用的日期,如下所示:
{{new Date(VALUE) | dateFormat('MMM. DD, YYYY', dateFormatConfig)}}
我试图从一个方法中调用它。这就是 Vuejs 所说的调用方式。
this.$options.filters.FILTERNAME(VALUE)
但我不知道如何使这项工作。这不起作用,因为没有 VALUE
this.$options.filters.dateFormat('MMM. DD, YYYY', dateFormatConfig)
我也试过这个:
this.$options.filters.dateFormat('MMM. DD, YYYY', VALUE)
还有这个:
this.$options.filters.dateFormat(VALUE, 'MMM. DD, YYYY')
还有这个:
this.$options.filters.dateFormat('MMM. DD, YYYY', dateFormatConfig)(VALUE)
这些都不起作用。有谁知道如何从方法中正确调用它?
更新:
事实证明这确实有效:
this.$options.filters.dateFormat(VALUE, 'MMM. DD, YYYY')
我需要将 VALUE 转换为:new Date(VALUE)
所以最终结果是:
this.$options.filters.dateFormat(new Date(VALUE), 'MMM. DD, YYYY')
【问题讨论】:
-
我在过滤器方面做得不多。如果没有人在这里解决您的问题,我建议您转到您发布的 npm 链接,单击 github 存储库链接,然后单击贡献者 Eduard。他列出了一封电子邮件。
-
我不明白你所说的“这不起作用,因为没有VALUE”是什么意思,显然你在HTML版本中有
new Date(VALUE)。 -
@TJ 我用 VALUE 替换了实际值以进行堆叠。 HTML 版本效果很好。我想从一个方法中调用它。
-
@Tim 我能够与开发人员取得联系。请参阅上面的更新。谢谢
-
@Jason 很高兴开发人员能够提供帮助。如果您的问题得到解决,您可能希望从问题更新中创建一个新答案,并接受该答案。这样其他人就知道问题已解决,并且可以在将来找到您的解决方案。
标签: javascript vue.js vuejs2 vue-filter