NodeJS 如何在Sveltekit浏览器中使用节点模块?

gab6jxml  于 2023-05-06  发布在  Node.js
关注(0)|答案(3)|浏览(126)

我正在学习javascript和svelte,我已经找到了一个module,我想使用。问题是这个模块是为node构建的,所以我不能直接在客户端使用require('number-to-words')
尽管如此,我还是安装了这个包,并尝试用

import { toOrdinalWord } from 'number-to-words'

但没有成功
我正在寻找像browserify和requirejs这样的解决方案,但对于我试图使用的简单库来说,它们似乎有点太复杂了,我不知道如何将它们与Svelte(kit)一起使用。
我应该怎么做才能在客户端调用那个库?

oug3syen

oug3syen1#

浏览器有内置的帮助工具来处理这些转换。看看MDN文档,看看你是否在Intl API中找到了你需要的东西。值得注意的是,当涉及到处理序数时,请查看下面的链接。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules

vh0rcniy

vh0rcniy2#

<script lang="ts">
    import * as n2w from 'number-to-words';
</script>

{n2w.toWordsOrdinal(21)}

你可以用这种方式导入它,它可以工作。
检查SvelteKit演示和Svelte

xv8emn3q

xv8emn3q3#

通常,应避免在浏览器中使用节点模块。SvelteKit避免在客户端使用节点模块的方法是在服务器上进行需要节点模块的计算(在load函数或内部API路由中),然后将结果发送给客户端。这在99%的情况下都是可能的。
更多信息:

相关问题