如果需要使用 SCSS mixin forVersion(3.1) 在单独库中引入可选样式,并希望查看结果,则 $useLatestStyles 变量需要在本地环境设置为 true. 对于 Spartacus 开发或演示,建议使用最新样式。 为避免在应用程序中频繁更改 $minorVersion,我们提供了一个标志,可用于随时跟上最新版本。 !default 在 Bootstrap Sass 中经常使用。 它类似于反向 !important。 所有引导程序变量都使用 !default 设置,以允许开发人员进一步自定义引导程序。 使用 !default sass 只会定义尚未设置的变量。 这允许更大的灵活性。 下面是一些例子: //Example1 Dress color = red $auroras-dress-color: blue; $auroras-dress-color: red; //Example2 Dress color = red $auroras-dress-color: blue !default; $auroras-dress-color: red; //Example3 Dress color = blue $auroras-dress-color: blue; $auroras-dress-color: red !default; 所以下面这行代码的意思是: $useLatestStyles: false !default; 如果用户没有定义这个变量,则 $useLatestStyles 的值为默认值即 false,如果用户定义了这个变量的值,则使用用户定义的值,而忽略 false 这个默认值。 这个变量会在 scss 的处理逻辑里被使用: @function isValidVersion($from, $to: 0) 最后通过 mixin 被外界消费: @mixin forVersion($from, $to: 0) { // We never create content that is part of future releases, this should not really happen. @if ($from <= $_fullVersion) { @if ( (isStableVersion($from, $to) and isValidVersion($from, $to)) or addBreakingChange($from, $to) ) { @content; } } } 同样的逻辑还有另一个变量: $skipComponentStyles 当且仅当一个 selector 没有定义在变量 $skipComponentStyles 里时,才执行第 25 行的 extend 操作。 下面是 Spartacus style 库的 app.scss 文件: 对于 feature library style 比如下图的 cart style 而言,不应用直接 import 这个 app.scss, 否则会导致客户在 style.scss 里自定义的样式会被覆盖掉。 Spartacus CSS layout:在绘制 padding, margin 和 font-sizes 时,应该使用 rem 而不是 px. https://github.com/SAP/spartacus/issues/15380 SAP Spartacus 4.0 不支持 Angular 13. 使用下列命令行指定使用 Angular 12 进行 Spartacus 安装: npx -p @angular/cli@12 ng new appname --style=scss --routing false OData 服务的实现分为 OData 数据模型的定义和围绕这些数据模型的 CRUD(增删改查) 操作的实现和 Action(function import) 的实现。
对于一个 OData 服务来说,一旦数据模型定义完毕,就可以生成元数据了,不需要等到增删改查和 Action 实现完毕。 |
|