代码之家  ›  专栏  ›  技术社区  ›  Mariusz Ignatowicz

SPFx ListView控件-“defaultSelection”不起作用

  •  0
  • Mariusz Ignatowicz  · 技术社区  · 3 年前

    我正在使用 ListView 控制从 @pnp/spfx-controls-react 库版本2.5.0

    有一个记录在案的属性称为 defaultSelection 即:

    默认情况下要选择的项目的索引

    我试图这样使用它来自动选择表的第一行:

              <ListView
                items={this.state.items}
                viewFields={this._viewFields}
                selectionMode={SelectionMode.single}
                selection={this._updateSelectedItems}
                defaultSelection={[0]}
              />
    

    但是当页面加载时,它从不选择任何内容。控制台中也没有错误。

    我还使用了一个简单的例子: https://github.com/RaspeR87/sp-dev-fx-webparts/tree/master/spfx-react-controls/ListView 在一个简单的项目上尝试它,但它永远不会选择任何东西。

    有人设法利用了这处房产吗?每一个输入赞赏。

    0 回复  |  直到 3 年前
        1
  •  1
  •   Danny Schønning    2 年前

    这里有一个解决问题的黑客:

    // Add a useRef to your ListView control
    const refListView = useRef<any>(null);
    
    // Set selection on load
    useEffect(() => {
           
        // Set mySelection as default selection
        const mySelection = [1,4,6];
        mySelection.forEach(i => {
            setTimeout(() => {
                refDocs.current._selection.setIndexSelected(i, true, false);
            }, 0);
        });
    
    }, []);
    
    // ListView control
    <ListView ref={refListView }...
    
        2
  •  0
  •   Amos    3 年前

    是的,我的测试结果和你的一样。您可以在PNP反应控制Github存储库中发布此问题。https://github.com/pnp/sp-dev-fx-controls-react/issues