Включение общего стиля в приложение NativeScript с использованием angular.json stylePreprocessor
Я пытаюсь использовать Angular 6 stylePreprocessorOptions
так что я могу просто @import 'app'
импортировать брендинг / другие общие стили в компонент.
Мой проект nativescript существует в настройке NxWorkspace, которая сама содержит angular.json
,
Документация от @nativescript/schematics
говорит, чтобы генерировать новый angular.json
файл в корне проектов NativeScript, который я сделал, но я также поместил клон определения в мой корень NxWorkspace angular.json
файл, так как мне неясно, который используется.
angular.json
Содержание файла можно найти здесь: https://hastebin.com/zajiviqoyi.json
При попытке использовать @import "app"
это говорит мне, что не может найти app
относительно файла, где я сделал строку импорта. В других моих установках приложения, но NativeScript в этом случае, кажется, игнорирует мою конфигурацию.
1 ответ
Через некоторое время я смог решить это сам.
Я должен был отредактировать webpack.config.js
конкретно sass-loader
,
Если вы измените sass-loader
часть .scss
правила, вы можете добавить includePaths
добиться резервного разрешения файла для sass.
{
loader: "sass-loader",
options: {
includePaths: ["assets/sass"]
}
}
это значит я могу сейчас @import 'app'
и NativeScript найдет файл за пределами своего собственного каталога.
Как предупреждение, это не включает систему расширений файлов, которая может похвастаться NativeScript, поэтому вы не можете добавить .tns
для конкретного файла NativeScript.
node-sass
(sass-loader) поддерживает loader
функция, которую вы можете использовать для эмуляции этой функции, если вам нужно.