首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >呈现HTML时Vue.filter未调用

问呈现HTML时Vue.filter未调用
EN

Stack Overflow用户
提问于 2019-01-08 15:12:31
回答 1查看 45关注 0票数 0

我是Vue.js新手

在呈现html时,我调用了一个Vue.filter。它应该以另一种格式显示日期。

下面是我的js文件:

代码语言:javascript
复制
  var details = new Vue({
  el: '#ajax-article-detail',
  data: {
    message: 'Hello Vue.js!'
  },
  methods: {
   showName: function() {
        console.log('Calling showName...'); 
        return 'Im Event';
   }
  }
});

      Vue.filter('parseDate', function(date, format) {
      if (date) {
        //console.log(moment(String(date)).format(format));
        return moment(String(date)).format(format);
      }
      });

在超文本标记语言中,我像{{${start_date} | parseDate('ddd, Do MMM YYYY')}}一样调用

作为回应,我得到了同样的声明。意思是,我得到的是html格式的{{${start_date} | parseDate('ddd, Do MMM YYYY')}}。

有谁能建议我做错了什么吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-01-08 15:26:45

我在Vue组件创建中添加了filter属性,从而更改了您的代码。

代码语言:javascript
复制
  var details = new Vue({
  el: '#ajax-article-detail',
  data: {
    message: 'Hello Vue.js!'
  },
  methods: {
   showName: function() {
        console.log('Calling showName...'); 
        return 'Im Event';
   }
  },
  filters: {
    parseDate: function(date, format) {
      console.log('value passed: ' + date); //check the browser console if it is passed
      if (date) {
        //console.log(moment(String(date)).format(format));
        return moment(String(date)).format(format);
      }
    }  
});

然后像这样使用过滤器-

代码语言:javascript
复制
{{2018-12-19 16:46:00 | parseDate('<your_date_format>') }}

但是,您需要检查是否正确传递了该值。尝试先传递一些硬编码的字符串值,然后检查控制台窗口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54086845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档