将forwardRef传递给React.cloneElement-ReactJs

时间:2020-02-21 21:53:19

标签: javascript reactjs

我有一个很难的主意。基本上我是这样使用useRef()的

import 'dart:io';

import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart' as image_picker;
import 'package:provider/provider.dart';
import 'package:simple_flutter_i18n/simple_flutter_i18n.dart';

// import '../i18n/i18n.dart';

class DropDown extends StatelessWidget {
 @override
  Widget build(BuildContext context) {
    final language = Provider.of<I18n>(context).lang;

    return Container(
      child: DropdownButton(
        onChanged: (d) {},
        items: [
          DropdownMenuItem(
            child: Container(
              width: 100,
              height: 10,
              color: Colors.red,
            ),
          ),
          DropdownMenuItem(
            child: Container(
              width: 100,
              height: 10,
              color: Colors.blue,
            ),
          )
        ],
      ),
    );
  }
}

然后我根据将useRef作为ref传递的父项的状态来渲染适当的子项

const refInput = useRef();

这有效。但是我收到警告说:

警告:不能为功能组件提供引用。尝试访问此引用将失败。您是要使用React.forwardRef()吗?

只要我为cloneElement提供forwardRef,它似乎就可以使用。有人知道我该怎么做吗?

0 个答案:

没有答案