如何修复:Monorepo项目中库中的Angular / Ionic v4“找不到要导入的样式表”

时间:2019-07-08 21:02:30

标签: angular angular-cli ionic4 node-sass ionic-cli

我有一个monorepo项目,其中包括一个库,几个项目和一个主要项目。我的离子项目在projects文件夹中。

我无法构建我的离子项目(ionic buildng build),因为它从主项目(src/)导入了一个模块,而该模块又从{ {1}}文件夹。

使用libs/进行构建时,出现错误:

“找不到要导入的样式表。”

ionic build

当我使用ng-cli进行构建时,似乎似乎在项目中的任何地方,从@import 'libs/...';导入的sass文件的引用都会出现错误,甚至包括未在该项目中导入的文件/模块。

构建从该文件夹导入的其他项目没有任何问题。

ionic项目文件夹中的libs/...文件包含以下代码段:

package.json

我的自定义配置粘贴在下面,我尝试了多种选择,包括是否包含"config": { "ionic_webpack": "./webpack.config.js", "ionic_sass": "./sass.config.js", "ionic_source_map_type": "source-map" }, 并从根目录和项目根目录都运行../../

ionic build

我也尝试过

const useDefaultConfig = require('@ionic/app-scripts/config/sass.config.js');

useDefaultConfig.includePaths.push('libs/path/to/assets/scss');
useDefaultConfig.includePaths.push('libs/path/to/assets/scss/partials');
useDefaultConfig.includePaths.push('../../libs/path/to/assets/scss');
useDefaultConfig.includePaths.push('../../libs/path/to/assets/scss/partials');

useDefaultConfig.includePaths.push('dist/path/to/assets/scss');
useDefaultConfig.includePaths.push('dist/path/to/assets/scss/partials');
useDefaultConfig.includePaths.push('../../dist/path/to/assets/scss');
useDefaultConfig.includePaths.push('../../dist/path/to/assets/scss/partials');

module.exports = useDefaultConfig;

我在module.exports = function(){ return useDefualtConfig; }; 文件项目部分的stylePreprocessorOptions.includePaths中添加了路径,如下所示:

angular.json

我还在"stylePreprocessorOptions": { "includePaths": [ "libs/path", "libs/path/assets/scss", "libs/path/assets/scss/partials", "dist/path", "dist/path/assets/scss", "dist/path/assets/scss/partials" ] }, tsconfig.app.json中都包含了路径。

0 个答案:

没有答案