首页 > 解决方案 > 从自然库(webpack)导入特定部分

问题描述

我使用的是npm natural library进行分词,只在一行中使用,如下图:

let token = natural.StemmerJa.prototype.tokenizeAndStem(searchWord, true);

但是,我不确定如何在 webpack 中导入它,因为 tokenizeAndStem 似乎是自然对象的一种方法。

我像这样导入它:

import natural from "natural";

有什么方法可以让我获得 StemmerJa 的 tokenizeAndStem?这是因为我当前的应用程序构建了整个库,并且加载时间非常慢。

任何指导将不胜感激。谢谢。

标签: javascriptnode.jswebpack

解决方案


尝试直接导入词干分析器:

import StemmerJa from "natural/lib/natural/stemmers/stemmer_ja";

(它在:)node_modules/natural/lib/natural/stemmers/stemmer_ja.js

我用以下代码测试了这种方法,它产生了 16kb 包(导入整个naturallib 提供了大约 7.8Mb 包):

import PorterStemmer from "natural/lib/natural/stemmers/porter_stemmer";

PorterStemmer.attach();
console.log("i am waking up to the sounds of chainsaws".tokenizeAndStem());
console.log("chainsaws".stem());

推荐阅读