vue + element select使用可创建条目,要达到相同id的两个下拉框都可以单独创建要怎么实现

发布于 2022-09-12 03:37:23 字数 2568 浏览 16 评论 0

select使用可创建条目,要达到相同id的两个下拉框都可以单独创建要怎么实现 或者当一个创建时弹出弹窗赋值另外一个

<el-table-column label="品名编码" width="150">
          <template slot-scope="scope">
            <el-select
              v-show="scope.row.repertoryListId == currentSelectId"
              v-model="scope.row.goodsId"
              filterable
              remote
              allow-create
              reserve-keyword
              :remote-method="goodsSearch"
              size="small"
              @visible-change="goodsVisibleChange($event, scope.row)"
            >
              <el-option
                v-for="item in goodsList"
                :key="item.goodsId"
                :label="item.goodsNo"
                :value="item.goodsId"
              />
            </el-select>
            <span v-show="scope.row.repertoryListId != currentSelectId">{{
              scope.row.goodsNo
            }}</span>
          </template>
        </el-table-column>
        <el-table-column label="品名" width="150">
          <template slot-scope="scope">
            <el-select
              v-show="scope.row.repertoryListId == currentSelectId"
              v-model="scope.row.goodsId"
              filterable
              remote
              allow-create
              reserve-keyword
              :remote-method="goodsSearch"
              size="small"
              @visible-change="goodsVisibleChange($event, scope.row)"
            >
              <el-option
                v-for="item in goodsList"
                :key="item.goodsId"
                :label="item.goodsName"
                :value="item.goodsId"
              />
            </el-select>
            <span v-show="scope.row.repertoryListId != currentSelectId">{{
              scope.row.goodsName
            }}</span>
          </template>
        </el-table-column>
goodsVisibleChange (e, row) {
            if (!e) {
                if (row.goodsId) {
                    const _tmp = this.goodsList.find(x => x.goodsId === row.goodsId)
                    if (_tmp) {
                    // 表示不是创建则赋值goodsList对应的name 和 no
                        row.goodsName = _tmp.goodsName
                        row.goodsNo = _tmp.goodsNo
                    } else {
                    // 表示是创建则赋值创建的对应的name和no
                    // 这里不知道如何处理
                        row.goodsName = row.goodsId
                    }
                }
            }
        },

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文