收藏
回答

列表渲染时,模板(template)传参的问题?

在做前端列表渲染时,首先我会将循环的项目用...item的方式传递给模板(template),渲染成功,没有问题;

为了控制全局焦点,我在this.data中有个nowFocu的变量,我希望同时传递给模板,应该这么写?我试图直接写nowFocu,但发现这样是不行的,求指教。

<view wx:for="{{form_newOrder}}" wx:key="index">
   <template is="{{item.element}}" data="{{nowFocu:nowFocu,...item" />
</view>





回答关注问题邀请回答
收藏

2 个回答

  • 没事
    没事
    2021-12-18

    楼主的想法是不是这样。变量是可以传的,但是模板里面要有相应的变量接收才行

    page.js

        nowFocu"var nowFocu in this.data",
        form_newOrder: [
          {
            element"a"
          },
          {
            element"b"
          }, 
          {
            element"c"
          }
        ]
    

    page.wxml

        <view wx:for="{{form_newOrder}}" wx:key="index">
          <template 
          is="{{item.element}}" 
          data="{{nowFocuName:nowFocu,...item}}"
          ></template>
        </view>
    

    template.wxml

    <template name="a">
      <view>
        <text>element: {{element}} </text>
        <text>nowFocu: {{nowFocuName}}  </text>
      </view>
    </template>
    
    
    <template name="b">
      <view>
        <text> element: {{element}} </text>
        <text> nowFocu: {{nowFocuName}} </text>
      </view>
    </template>
    

    最终效果

    2021-12-18
    有用 2
    回复
  • 唐同学
    唐同学
    2021-12-19

    谢谢,已解决。

    2021-12-19
    有用
    回复
登录 后发表内容