https://www.juniper.net/documentation/en_US/day-one-books/DO_SegmentRouting.pdf

TI-LFA

The legacy (R)LFA
configuration, using SPRING (not LDP) as the tunneling technology for RLFA:

groups {
    GR-ISIS {
        protocols isis interface <*e*> {
            node-link-protection;                # Prefer node protection backup next-hop
        }
    }
}
protocols {
    isis {
        apply-groups GR-ISIS;
        backup-spf-options {
            remote-backup-calculation;           # Use RLFA next-hop, when necessary
            node-link-degradation;               # Use link protection next-hop as last resort
            use-source-packet-routing;           # Protect both, MPLS and native IP traffic
        }
    }
}

Now, let’s replace the legacy (R)LFA configuration (using SPRING and not LDP as
the tunneling technology) with a TI-LFA (native SPRING fast reroute architecture)
configuration, as outlined in following example:

groups {
    GR-ISIS {
        protocols isis interface <*e*> {
            level 2 post-convergence-lfa; # TI-LFA, by default, uses link-protection backup next hops
        }
    }
}
protocols {
    isis {
        apply-groups GR-ISIS;
        backup-spf-options {
            use-post-convergence-lfa;
            use-source-packet-routing;
        }
    }
}

enable node protection in TI-LFA:

groups {
    GR-ISIS {
        protocols isis interface <*e*> {
            level 2 post-convergence-lfa node-protection;
        }
    }
}
protocols {
    isis {
        apply-groups GR-ISIS;
    }
}
The choice between link protection and node protection depends on the network topology; if there are multiple nodes capable of reaching the destination, node protection should be choosed.