0

我想在我的 scalajs 应用程序中使用外观 Algoliasearch,我通过 sbt 导入它,但在 UI 上我看到 $g.algoliasearch 不是一个函数。我认为这是因为缺少 javascript 库。我在 package.json 中包含了 Algoliaseach-client-javascript 依赖项,并安装了它。

现在我不确定当我使用外观时如何提供/链接这些依赖项。如果有人可以提供一些有用的示例代码

我说的是这些门面中的任何一个https://github.com/DefinitelyScala/scala-js-algoliasearch

我已经添加了这样的 jsDependencies

jsDependencies ++= Seq( "org.webjars.bower" % "github-com-algolia-algoliasearch-client-javascript" % "3.18.1" / "3.18.1/reactnative.js" ) 我希望上面会在我的 scalajs.output.ios 文件中声明这样的内容 var Algoliasearch = require(...) 但我没有看到任何这样的条目并且我仍然不确定如何导入它以避免以下错误:

$g.algoliasearch 不是函数

请帮助我在这里缺少什么?

4

1 回答 1

0

有两种选择:

<script>1)像 JavaScript 和 HTML 一样,简单地将 JavaScript 依赖项作为单独的标签包含在内。请注意,这些必须位于 Scala.js 应用程序的标记之前。<script>

2) 使用jsDependencies机制构建一个 -jsDeps.js 文件,该文件将所有依赖项收集到一个文件中,并将其包含在一个<script>标签中。(同样,在应用程序本身之前。)

请注意,外观库可以提供jsDependencies,并且您的应用程序可以使用它,但我个人不建议这样做——它会导致依赖项之间的版本控制冲突。如果您的应用程序只是加载 JavaScript 本身,它往往会工作得最好。

如果您确定您的 HTML 文件已包含 JavaScript,并且您收到此错误,请检查以确保在 Scala.js 应用程序运行之前加载了 JavaScript。

于 2017-05-09T16:59:42.500 回答