Closed irok closed 7 years ago
.stylelintrc が以下のとき、期待するルールは「stylelint-config-standard の全設定+indentation: 4」というものですが、実際には indentation: 4 のみのルールとして動作しているようです。
.stylelintrc
stylelint-config-standard
indentation: 4
{ "extends": "stylelint-config-standard", "rules": { "indentation": 4 } }
ソースを読んだところ、extends のルールとのマージは lib/params.js#L82 で行われていますが、ここで使われている object-assign は再帰的なマージを行わないため、params.stylelintがoriginParams.stylelintで上書きされてしまいます。
extends
params.stylelint
originParams.stylelint
var newParams = objectAssign({}, params, originParams) newParams.stylelint = objectAssign({}, params.stylelint, originParams.stylelint)
のようにする必要があるかと思います。
この問題は解決難しいでしょうか?優先度の問題でしょうか? 自社用の共通 config を定義していて、それをサイトごとに extentds してカスタマイズしているのですが、共通 config の設定が一切無視されてしまうのです。
v4.4.0 では stylelint の config parser を使うようになり、上記の問題が解決したことを確認しました。
.stylelintrc
が以下のとき、期待するルールは「stylelint-config-standard
の全設定+indentation: 4
」というものですが、実際にはindentation: 4
のみのルールとして動作しているようです。ソースを読んだところ、
extends
のルールとのマージは lib/params.js#L82 で行われていますが、ここで使われている object-assign は再帰的なマージを行わないため、params.stylelint
がoriginParams.stylelint
で上書きされてしまいます。のようにする必要があるかと思います。