我的 Prismic/Nuxt 项目上有一个搜索页面,可以对 Prismic API 进行全文查询。这段代码将做到这一点export default { name: 'Search', async asyncData({ $prismic, params, query, error }) { try { // Query to get post content const products = await $prismic.api.query($prismic.predicates.fulltext('my.product.title', query.q), { orderings: '[my.product.title desc]' }) // Returns data to be used in template return { products: products.results, } } catch (e) { // Returns error page error({ statusCode: 404, message: 'Page not found' }) } },}网址是/search/?q=somesearch问题是,如果我在没有查询参数的情况下点击 /search/ ,它会立即捕获错误Unable to encode undefined of type undefined,显然是因为它尝试使用未定义的值查询 API,但我似乎不知道如何制作如果未设置查询,则不查询 API,而是仅显示搜索框,这是有效的检查。我尝试过if query.q !== undefined 在尝试部分,但这不起作用。
1 回答
繁星coding
TA贡献1797条经验 获得超4个赞
要检查未定义的值,您可以使用:
if (typeof query.q !== 'undefined')
typeof
以字符串形式返回数据类型,这使得检查未定义的值成为可能。
添加回答
举报
0/150
提交
取消