我在參考由下列文件中描述的AngularJS $解析服務描述: http://docs.angularjs.org/api/ng/service/$parse
我不熟悉AngularJs文件,並想知道是什麼那些平均:
{object=}
{?function(context, value)}
在AngularJs文檔中,=
符號意味着什麼?
?
標記在AngularJs文檔中的含義是什麼?
我在參考由下列文件中描述的AngularJS $解析服務描述: http://docs.angularjs.org/api/ng/service/$parse
我不熟悉AngularJs文件,並想知道是什麼那些平均:
{object=}
{?function(context, value)}
在AngularJs文檔中,=
符號意味着什麼?
?
標記在AngularJs文檔中的含義是什麼?
這些是從Closure Compiler註釋派生的註釋(https://developers.google.com/closure/compiler/docs/js-for-compiler)。
{object=}
這僅僅是符號的當地人反對。
一個當地人對象可能是這樣的:{local:{value:'isSet'}}
其中object
(本地)是=
到{value:'isSet'}
這只是表明對象必須命名爲鍵值對本地對象。
這裏是一個例子。
var context = { stuff:null },
locals = { local: { value:'isSet' }, local1:'!' },
parseFunction = $parse("stuff = local.value + local1"),
result = parseFunction(context,locals);
console.log(context); // -> Object { stuff: 'isSet!' }
console.log(result); // -> 'isSet!'
至於{?function(context, value)}
這只是表明你需要檢查該財產的存在作爲一個函數使用它之前(因爲它可能會或可能不會進行定義)。
在上述代碼的情況下。由於它不是「可賦值」的表達式
parseFunction.assign === undefined // true
通常'?'表示事情可能會或可能不會在那裏。
希望這會有所幫助!
非常感謝這個詳細的解釋。您提供的代碼示例的確非常具有啓發性! – balteo