1

依存関係からsassをインポートするemberアドオンを開発しています。それを使用するには、アドオンに次のものがあります-

# 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'
    ]
  }
});

node_modules理想的には動作するはずですが、ホストアプリのすべてをインポートしようとするため、sass がメモリ不足になります。ダミーアプリとホストアプリの両方で名前空間付きの lib scss をインポートできるようにするにはどうすればよいですか?

4

0 に答える 0