首页 > 解决方案 > 在 Combobox onload LWC 中默认一个动态值

问题描述

我正在通过 JS 从 apex 检索一组值,我想预选 Lightning-combobox 中的第一个选项(不同用户检索到的值不同)。我使用了@track 变量并尝试使用connectedcallback 设置onLoad 的值。下面是代码片段

HTML

<lightning-layout-item padding="around-small">
            <lightning-combobox
           name="objPicklist"
           label="Objects"
           value={selectedObj}
           options={objects}
           onchange={displayObjRecords} >
        </lightning-combobox>

JS文件

@track selectedObj;
objects = [];

connectedCallback(event) {
  
    optionList({
        userID : this.currentUser,
    })
    .then(result=>{
        var i;
        
        for(i = 0; i < result.length; i++){
            const option = {
                label : result[i],
                value : result[i]
            };
            this.objects = [...this.objects, option];
            
        }
        //SETTING UP THE VALUE HERE.
        this.selectedObj = this.objects[0].value;
        
    })
    .catch(error => {
        this.error = error;
        console.log('Error : '+ JSON.stringify(this.error));
    })
    
}

我想默认在闪电组合框中检索到的第一个选项。 我怎样才能在 LWC 中做到这一点?

标签: javascriptsalesforcesalesforce-lightninglwc

解决方案


这是我的版本,

它似乎在这里工作正常:

https://webcomponents.dev/edit/enWpiQZZx8jl1OlicDeH

我使对象属性反应:

  @track objects = [];

推荐阅读