webpack - 无法使用 --bundle 设置全局自定义“cssFile”。(没有 --bundle 也可以)
问题描述
我们想根据一些逻辑应用不同的GLOBAL CSS 文件。
所以我们做了一个小测试,只是为了检查应用自定义名称(不是app.css
但app1.css
)是否有效:
我们使用了示例项目:tns create aaa --ng
& webpack(所有最新版本)
//main.ts:
platformNativeScriptDynamic({
startPageActionBarHidden: false ,
cssFile:"app1.css"
}) .bootstrapModule(AppModule);
它确实有效(没有--bundle
)。
所以你可以看到 Items 是红色的:
但是- 现在我们想用 进行测试--bundle
,所以我们修改了 webpack json 文件来搜索app1.css
而不是app.css
(也修改main.aot.ts
)与:
import { setCssFileName } from "application";
setCssFileName("./app1.css");
但是 - 运行tns run android --bundle
不起作用:
ERROR in ../node_modules/nativescript-dev-webpack/load-application-css-angular.js
Module not found: Error: Can't resolve '~/app' in 'C:\Users\sff\Desktop\delme1\ddd\node_modules\nativescript-dev-webpack'
@ ../node_modules/nativescript-dev-webpack/load-application-css-angular.js 5:49-65
@ ./main.ts
我也尝试过:
import { setCssFileName } from "application";
setCssFileName("./app1.css");
它运行完成,但app1.css
文件未应用(此处没有红色):
我们尝试了许多变化:
cssFile:"app1.css"
cssFile:"./app1.css"
cssFile:"~/app1.css"
cssFile:"/app1.css"
但是当我考虑它时,这个 ^ 是不相关的——因为如果我不这样做cssFile:"app1.css"
的 --bundle
话——app1.css
就会受到尊重。问题是它不被尊重--bundle
他们都没有工作。
问题 :
看来app1.css
with--bundle
是不被尊重的。只有app.css
尊重。
如何为我的应用设置全局自定义 css 文件?
package.json
项目示例: https ://ufile.io/ge4to
nativescript@4.1.1
Windows 10
解决方案
要根据业务逻辑更改应用程序范围的 css 文件,您可以使用application
nativescript 核心包中的模块。
import { setCssFileName } from "application";
setCssFileName("./app1.css");
您可以在 app.component.ts 构造函数中编写业务逻辑,并基于该调用setCssFileName()
来更改应用级 css 文件。
这是供参考的游乐场演示:https ://play.nativescript.org/?template=play-ng&id=LnjIr4
推荐阅读
- java - Java 配置,需要返回函数7
- python - 在熊猫中对具有列表的列进行相互引用的排序
- python - 从两个列表创建字典?在取平均值的同时?
- python - 我们可以通过在 Pandas 中找到相关性来估算两列中的缺失值吗?
- javascript - 我正在尝试在 nodejs 中抓取一个维基百科页面
- git - 我正在尝试通过 git(命令行)将一个项目从我的 pc 拉到 github。但我无法从 github 获取链接
- angular - 为什么这个组件没有应用 css 规则?
- c# - 如果目标足够近,如何使炮塔面向目标旋转并使目标以随机高度和速度围绕炮塔旋转?
- git - 如何正确克隆并切换到现有的 fork 分支
- nlog - NLog 将条目保存到数据库(postgresql),