1

我正在开发一个 ember 插件,它从它的依赖项中导入 sass。要使用它,我的插件中有以下内容 -

# my-addon/package.json
...
"dependencies": {
  "lib1": "^1.5.3",
  "lib2": "1.2.3",
  "ember-cli-sass": "^10.0.1",
  "sass": "^1.23.3"
}
...
# my-addon/addon/styles/addon.scss

@import "lib1/assets/stylesheets/styles";
@import "lib2/assets/stylesheets/styles";
# my-addon/ember-cli-build.js

let app = new EmberAddon(defaults, {
  // Add options here
  sassOptions: {
    includePaths: [
      'node_modules'
    ]
  }
});

这样,虚拟应用程序就tests/dummy可以解析导入。但是当我在我的主机应用程序中使用插件时,我得到

Error: Can't find stylesheet to import.
  ╷
1 │ @import "lib1/assets/stylesheets/styles";
  │         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

我可以将我的主机应用程序修改ember-cli-build.js

let app = new EmberAddon(defaults, {
  // Add options here
  sassOptions: {
    includePaths: [
      'node_modules/my-addon/node_modules'
    ]
  }
});

理想情况下它应该可以工作,但 sass 内存不足,因为它试图将所有内容导入node_modules我的主机应用程序中。如何使虚拟应用程序和主机应用程序仍然能够导入命名空间 lib scss?

4

0 回答 0