shopify - Shopify / Liquid 运营商 - 仅包含
问题描述
如果字符串仅包含(即完全匹配)指定的字符串,我正在寻找一个液体运算符。
例如,假设我有两个产品标签,“黑色”和“黑白”,我只想为“黑色”触发一个事件,我该怎么做?下面的液体会触发两者,因此输出消息两次。
{% if tag contains 'Black' %} Hi {% endif %}
我试过了,例如
{% if tag = 'Black' %} Hi {% endif %}
但这会产生错误,似乎是不允许的。是否有一个运算符用于字符串的精确匹配?
解决方案
当您contains
对数组使用运算符时,它会执行完全匹配。
例如,如果您的产品只有Black and White
标签,product.tags contains "Black"
则不会返回true
,因为product.tags
它是一个数组。true
只有当产品有Black
标签时才会返回。
看起来您在循环中针对每个标签单独使用了它,其中tag
是一个字符串。在这种情况下,当字符串的一部分匹配条件时contains
返回。true
推荐阅读
- javascript - 无法使用 ngx-cookie-service 设置 cookie
- kubernetes - HAProxy 从操作系统使用 DNS?
- java - UML 体系结构是否足够干净和具体,可以用 java 编码
- javascript - 如何在 React 中将音频文件读取为二进制字符串?
- vector - 打印向量总和 MIPS
- google-chrome - Chrome 报告 URL 安全检查状态
- qt - Qt3D 高 CPU 使用率。没有硬件加速?
- vue.js - vue b-table 自定义分页显示所有行
- c++ - 用不同的派生类型参数覆盖纯虚函数
- database - 是否有任何面向只写的数据库,它们由仅附加的大容量可读文件存储(如 Parquet)支持?