UIkit.uploadDrop不是函数(打字稿)

时间:2020-03-18 06:05:21

标签: typescript uikit next.js

我正在使用@ types / uikit npm软件包,并且遇到此错误。这是我现在的代码

    UIkit.uploadDrop('.js-upload', {
    action: '',
    single: true,
  } as UIkit.UploadOptions);

enter image description here

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用“ next / head”并将其作为单独的JS文件(例如页面上的upload.js)包含在内?

例如,您可以通过以下方式为特定页面加载外部文件:

 import React from "react"
  import Head from 'next/head'
  import MyAwesomeComponent from "../components/mycomponent.js"
  export default () => (
    <div>
      <Head>

        <link type="text/css" rel="stylesheet" href="static/css/chatwidget.css" />
        <link type="text/css" rel="stylesheet" href="static/css/download.css" />

        <script type="text/javascript" src="static/libs/jquery.min.js"></script>
        <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/malihu-custom-scrollbar-plugin@3.1.5/jquery.mCustomScrollbar.concat.min.js"></script>
        <script type="text/javascript" src="static/libs/bootstrap.min.js"></script>
        <script type="text/javascript" src="static/libs/owl.carousel.min.js"></script>
        <script type="text/javascript" src="static/scripts/chatHead.js"></script>
        <script type="text/javascript" src="static/libs/jquery.magnific-popup.js"></script>
      </Head>

      <MyAwesomeComponent /> {/* a simple React component that returns  : <p>Hello World </p>*/}
    </div>
  )

然后,您可以使用这种方法,通过UIKit库中的代码包含upload.js文件,以这种方式处理上传。我之所以建议使用这种方法,是因为我花了很多时间试图与UIkit Typescript类型打交道,即使组件本身的代码正确,也无法超越。我是否使用上述方法移动了代码片段以处理上传,但一切正常,开箱即用。

您可以将此新js文件移动到您的静态目录中,在Next 8.0+之后将其称为public

我知道这不能专门解决该错误,但是它可能会为您提供一种不同的尝试方法。