分享方式:


Linter 規則 - 偏好未加上引號的屬性名稱

此規則會在已宣告物件屬性名稱和已使用陣列從物件屬性取值時,尋找非必要的單引號。

在 Bicep 中,當物件屬性金鑰包含數字或特殊字元時,可選擇性允許引號。 例如,空格、'-' 或 '.'。 如需詳細資訊,請參閱物件 (部分機器翻譯)。

Linter 規則程式碼

使用 Bicep 設定檔中的下列值來自訂規則設定:

prefer-unquoted-property-names

解決方案

下列程式碼中不需要引號:

var obj = {
  newProp: {} // Property name is fine.
  'my-prop' : {} // Quotes are required.
  '1' : {} //  Quotes are required.
  'myProp': {} // Quotes are NOT required.
 }

var x0 = obj.newProp // Code is fine.
var x1 = obj['my-prop'] // Quotes and square brackets are required.
var x2 = obj['1'] // Quotes and square brackets are required.
var x3 = obj['myProp'] // Use obj.myProp instead.

您可以移除非必要的引號以修正程式碼:

var obj = {
  newProp: {}
  'my-prop' : {}
  '1' : {}
  myProp: {}
 }


var x0 = obj.newProp
var x1 = obj['my-prop']
var x2 = obj['1']
var x3 = obj.myProp

(選擇性) 您可以使用快速修正來修正問題:

linter-rule-prefer-unquoted-property-names-quick-fix

偏好未加上批注屬性名稱的螢幕快照快速修正。

下一步

如需 Linter 的詳細資訊,請參閱使用 Bicep Linter