指令模板选项有complie和link两个字段,两者之间存在如下关系: 当compile字段存在时,link字段将被忽略,compile函数的返回值将作为link字段. 当compile不存在,link字段存在时,angular通过这样directive.compile = valueFn(directive.link);包装一层,使用用户定义的link字段. 而link分为preLink和postLink两个阶段,从link字段或者compile函数的返回值来看: 如果是函数,那么这样的lin…