怎样动态的把数据里的某个字符串替换成input输入框显示出来?

怎样动态的把数据里的某个字符串替换成input输入框显示出来?
比如:笑里(藏)刀
把【藏】字替换成输入框。让用户输入

阅读 7.7k
5 个回答

在模板里面根据传入的值来判断渲染什么元素,可以看下这个 demo。
查看 demo

v-html + 正则

比如 input 绑定的变量名是 value

let str = `笑里(${value})刀`

两个方法:

  1. 使用 render 函数
  2. 整理字符串,转换成数组,比如 笑里(藏)刀 => ['笑里', '藏', '刀'],然后模版里

    template(v-for="(str, index) in text")
      input(
        v-if="index % 2 === 1", 
        placeholder="__",
        v-model="text[index]",
      )
      template(v-else) {{str}}

建议先尝试第一种,失败了再用第二种。

可以笑里<input />刀,也可以笑里${value}刀 <input v-model='valule'/>

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题