svelte/sapper rollup 无法解析 rollup.config.js 中的 ES6 模块

问题描述

我有一个带有预处理部分的外部组件(svelte-gallery-component)。

正常运行时导入使用的组件文件是ES6,运行正常。

从 rollup.config.js 预处理器部分使用的组件文件会产生导入语法错误。因此,我必须将该文件恢复为 commonjs 语法并将其粘贴在某个地方以免混淆组件组织的其余部分:

  svelte-masonry-gallery
    / src directory
       | index.js
       | svelteMasonrygallery.js
       / preprocessor directory
            |  processgalleries.js

当前正在将组件链接到位于 @aphorica/svelte-masonry-gallery 的项目

在 sapper 项目 rollup.config.js 中,为了避免出错,我必须一路导入到处理器文件中:

  import { preprocessgalleries } from '@aphorica/svelte-masonry-gallery/src/preprocess/processgalleries.js'

preprocessgalleries.js 文件使用 commonjs require 语句来获取所需内容

在 rollup.config.js 中,processgalleries() 在 server 部分和 package.json 文件中被调用,它被指定为 devDependency。

所以,它可以工作,但规范很笨拙,我希望预处理器使用 ES6 约定。

我最终想要做的是将它像其他组件文件一样导出到 src 目录中的 index.js 文件中:

export { default as svelteMasonrygallery } from './svelteMasonrygallery.js'
--> export { default as processgalleries } from './preprocessor/processgalleries.js'

这将允许我在 rollup.config.js 中做一个简单的导入:

import { processgalleries } from '@aphorica/svelte-masonry-gallery`

有什么办法可以做到吗?

'svelte-masonry-gallery' 组件 package.json 文件如下所示:


  "name": "@aphorica/svelte-masonry-gallery","version": "1.0.0","svelte": "src/index.js","scripts": {
    "test": "jest","test:watch": "jest --watch",},"devDependencies": {
    "@babel/core": "^7.12.10","@babel/preset-env": "^7.12.11","@rollup/plugin-node-resolve": "^11.1.1","@testing-library/jest-dom": "^5.11.9","@testing-library/svelte": "^3.0.3","babel-jest": "^26.6.3","jest": "^26.6.3","rollup": "^2.38.1","rollup-plugin-svelte": "^7.1.0","svelte": "^3.0.0","svelte-jester": "^1.3.0"
  },"keywords": [
    "svelte","gallery","components"
  ],"files": [
    "src/index.js","src/svelteMasonrygallery.svelte","src/preprocessor/processgalleries.js"
  ],"dependencies": {}
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...