将第三方库导入Stenciljs项目

时间:2019-01-11 09:16:01

标签: node.js ionic-framework stenciljs

因此,我试图将第三方npm模块'rss-parser'导入我的Stenciljs项目。我尝试过像官方文档中那样:


    let Parser = require('rss-parser');
    let parser = new Parser();

    (async () => {

      let feed = await parser.parseURL('https://www.reddit.com/.rss');
      console.log(feed.title);

      feed.items.forEach(item => {
        console.log(item.title + ':' + item.link)
      });

    })();

我收到错误消息:Can't find variable: require

我认为我不知该如何安装这些库,但是我不知道该怎么办。我对Mouldle Bundles有所了解,但我认为Stenciljs编译器已经附带了它。

我试图在ES6项目中导入旧的JS代码是一个问题吗?

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

模板组件是用TypeScript编写的,因此您可以使用import来引入依赖关系:

import Parser from 'rss-parser';

更多有关TypeScript模块的信息:https://www.typescriptlang.org/docs/handbook/modules.html

答案 1 :(得分:0)

var Parser = require('rss-parser')是requireJS语法,不适用于模具。 您需要使用以下方式之一导入它:

import Parser from 'rss-parser';

import { Parser } from 'rss-parser';

import 'rss-parser';

这完全取决于模块如何导出变量。

您可能需要在stencil.config.ts文件中做的另一件事是

nodeResolve: true