微信小程序报错Bad attr ‘wx的原因以及解决办法

三种解决办法

1、百度了很多都说是多写了wx:else,所以首先请检查页面是否多写了wx:else,多写会报错,一个wx:if 对应一个wx:else

2、但确实只写了一个wx:else,那么请检查wx:if 与wx:else 是否写在同一层级

3、如果2还没问题,那么请检查wx:if 与wx:for 不能写在同一个标签上。

我今天写项目的时候就是遇到的第三章错误,在微信开发者文档中也没找到解答,整了半天于是找到了大佬的博客,这里分享给大家。(第三种这个我还真不知道,哈哈哈,又掌握了一个小知识点)

原文传送门:原文

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 微信小程序是一种轻量级应用程序,可以在微信内直接运行。封装wxml并回传参数是指在小程序中使用自定义组件,将组件封装在一个wxml文件中,并将参数传递给该组件。 封装wxml可以将页面上的一段重复的代码封装在一起,减少代码的冗余,提高代码的可维护性。在小程序中,我们可以创建一个自定义组件的文件夹,包含一个wxml、一个wxss和一个js文件。在wxml文件中定义组件的结构,在wxss文件中定义组件的样式,在js文件中处理组件的逻辑。通过封装wxml,我们可以将组件的代码复用在不同的页面中。 当我们需要向封装的组件传递参数时,可以在引用组件的地方通过属性对组件进行赋值。在引用组件的wxml文件中,使用<component-name attr="{{value}}"></component-name>的形式,其中component-name是组件的名称,attr是组件的属性名,value是要传递的参数。在组件的js文件中,可以使用this.properties.attr获取传递的参数。 除了通过属性传递参数,我们还可以通过事件传递参数。当组件内部发生某种操作时,可以使用this.triggerEvent('eventName', {data})触发一个自定义事件,并将参数传递给父组件。在父组件的wxml文件中,使用<component-name bind:eventName="handleEvent"></component-name>的形式来监听自定义事件,并在父组件的js文件中定义handleEvent方法来处理传递的参数。 总结来说,封装wxml并回传参数是一种在微信小程序中使用自定义组件的方式。通过封装wxml可以将重复的代码封装在一个文件中,提高代码的复用性和可维护性。通过传递参数,可以实现组件之间的数据交互,增强小程序的功能和灵活性。 ### 回答2: 微信小程序wxml是一种类似HTML的标记语言,用于描述小程序的界面结构。当我们需要封装wxml并回传参数时,可以通过以下步骤实现: 1. 在小程序中创建一个自定义组件,可以是一个文件夹,将其命名为自定义组件的名称,例如"my-component"。 2. 在该文件夹下创建两个文件:一个是WXML文件,命名为"my-component.wxml";另一个是JS文件,命名为"my-component.js"。 3. 在"my-component.wxml"文件中,编写需要封装的wxml代码,可以是一段HTML标签等等。 4. 在"my-component.js"文件中,定义一个名为"properties"的属性,用于接收外部传入的参数,并在其中定义一个名为"myData"的属性,用于接收和存储从外部组件传入的数据。 5. 在"my-component.wxml"文件中的相关位置,使用"{{myData}}"的形式展示从外部传入的参数值。 以上步骤完成后,在小程序中使用该自定义组件时,可以通过将数据传递给组件的"properties"属性,实现参数的传递和回传。 例如,如果我们要将一个值为"Hello World"的参数传递给自定义组件,并将其展示在组件中,可以这样做: 1. 在页面的WXML文件中引入自定义组件,例如: <my-component myData="{{myParameter}}"></my-component> 2. 在页面的JS文件中定义和设置"myParameter"变量的值,例如: Page({ data: { myParameter: "Hello World" } }) 3. 在自定义组件的"my-component.wxml"文件中,使用"{{myData}}"的形式展示参数值,例如: <view>{{myData}}</view> 通过以上方式,我们可以在小程序中封装wxml并回传参数,实现灵活的组件复用和数据传递。 ### 回答3: 微信小程序中,可以通过封装wxml并回传参数来实现一些特定的功能。封装wxml指的是将一段具有重复使用的代码封装为一个wxml文件,然后通过引用该wxml文件来复用这段代码。 首先,在需要封装的代码段上方定义一个 `<template>` 标签,指定该封装wxml的名称和参数。例如,我们定义一个名为 `myTemplate` 的封装wxml,并设置一个参数 `text`: ```html <template name="myTemplate"> <text>{{text}}</text> </template> ``` 然后,在需要使用封装wxml的地方,通过 `<import>` 标签引入该wxml文件,并使用 `<template>` 标签来调用封装wxml并传入参数。 ```html <import src="path/to/myTemplate.wxml"/> <template is="myTemplate" data="{{text: 'Hello World'}}"></template> ``` 在这个例子中,我们通过 `<import>` 标签引入名为 `myTemplate` 的封装wxml文件,并在调用时传入参数 `text: 'Hello World'`。 通过以上步骤,我们成功地封装了wxml并回传了参数。在 `<template>` 标签内部,我们可以使用 `{{text}}` 来引用传入的参数,从而实现动态的内容展示。 总结起来,使用微信小程序封装wxml并回传参数的主要步骤包括定义封装wxml文件、引入封装wxml文件和使用 `<template>` 标签传递参数。这样可以方便地复用代码和实现动态展示的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值