首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为vue.js应用程序的每个标记分别运行函数?

如何为vue.js应用程序的每个标记分别运行函数?
EN

Stack Overflow用户
提问于 2017-05-21 13:43:13
回答 1查看 204关注 0票数 0

我正在发现Vue JS,我想尝试一些东西,在解释之前,查看代码将更容易理解。

https://jsfiddle.net/n4mav0x8/2/

正如您所看到的,有两个标记([% message %]),我想要做的是为列表中的每个标签显示一个随机的颜色,可以吗?

html:

代码语言:javascript
复制
<div id="app-5">

  <div class="color">
    <span class="colorHandler">
      <p>[% message %]</p>
    </span>
  </div>

  <div class="color">
    <span class="colorHandler">
      <p>[% message %]</p>
    </span>
  </div>

  ... # the quantity of these specific '[% message %]' tags may vary.
</div>

javascript (VueJ) :

代码语言:javascript
复制
var colors = "['#e6f0ff', '#000a1a' ,'#ffe680', '#ffcc00', '#ffd9b3']";
var parsed_colors = colors.match(/#[a-f0-9]{6}/g);
var randomIndex = Math.floor(Math.random() * parsed_colors.length); 
var randomElement = parsed_colors[randomIndex];

var app5 = new Vue({
  el: '#app-5',
  data: {
    message: randomElement
  },
  delimiters: ["[%","%]"]
})

我怎样才能做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-21 13:55:35

使用方法 (但您可能需要刷新,因为值有时是随机相同的:)

代码语言:javascript
复制
var app5 = new Vue({
  el: '#app-5',
  data: {
    message: null
  },
  methods:{
    randomColor:function(){
        var colors = "['#e6f0ff', '#000a1a' ,'#ffe680', '#ffcc00', '#ffd9b3']";
      var parsed_colors = colors.match(/#[a-f0-9]{6}/g);
      var randomIndex = Math.floor(Math.random() * parsed_colors.length); 
      var randomElement = parsed_colors[randomIndex];
      return randomElement
    }
  },
  delimiters: ["[%","%]"]
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44097605

复制
相关文章

相似问题

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