Nx ਮੋਨੋਰੇਪੋਸ ਵਿੱਚ ਸਟ੍ਰੀਮਲਾਈਨਿੰਗ ਪਾਥ ਕੌਂਫਿਗਰੇਸ਼ਨ
ਵੱਡੇ ਪੈਮਾਨੇ ਦੇ Nx ਮੋਨੋਰੇਪੋ ਵਿੱਚ ਰੂਟਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਮੁਸ਼ਕਲ ਹੋ ਸਕਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ project.json ਫਾਈਲ। ਟੀਮਾਂ ਦਾ ਵਿਸਤਾਰ ਹੁੰਦਾ ਹੈ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ ਬਦਲਦੇ ਹਨ, ਜਿਸ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਅਕਸਰ ਇੱਕ ਵੱਡੇ ਰੱਖ-ਰਖਾਅ ਦੀ ਲਾਗਤ ਹੁੰਦੀ ਹੈ। ਵਰਗੀਆਂ ਕੁੰਜੀਆਂ ਵਿੱਚ ਰਿਸ਼ਤੇਦਾਰ ਮਾਰਗ $ਸਕੀਮਾ, ਜੋ ਪ੍ਰੋਜੈਕਟ ਦੇ ਅੰਦਰ ਸਕੀਮਾਂ ਅਤੇ ਸੰਰਚਨਾਵਾਂ ਦੀ ਅਗਵਾਈ ਕਰਦੇ ਹਨ, ਇਸਦੀ ਇੱਕ ਉਦਾਹਰਣ ਹਨ।
ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਵਰਤਮਾਨ ਵਿੱਚ ਹਰ ਵਾਰ ਫੋਲਡਰ ਬਣਤਰ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰਨ 'ਤੇ ਮਿਹਨਤ ਅਤੇ ਗਲਤੀ ਨਾਲ ਇਹਨਾਂ ਸੰਬੰਧਿਤ ਮਾਰਗਾਂ ਨੂੰ ਅਪਡੇਟ ਕਰਨਾ ਪੈਂਦਾ ਹੈ। ਇਹ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਉਹਨਾਂ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਸੱਚ ਹੈ ਜੋ ਸਵੈਚਲਿਤ ਟੂਲਿੰਗ ਜਾਂ VSCode ਪਲੱਗਇਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਨਵੇਂ ਐਂਗੁਲਰ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਬਣਾਉਂਦੇ ਜਾਂ ਸੰਰਚਿਤ ਕਰਦੇ ਹਨ। ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਵਿਘਨ ਪੈ ਸਕਦਾ ਹੈ ਅਤੇ ਅੱਪਗਰੇਡ ਲਈ ਲਗਾਤਾਰ ਲੋੜਾਂ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਸੰਭਵ ਗਲਤ ਸੰਰਚਨਾ ਹੋ ਸਕਦੀ ਹੈ।
ਇੱਕ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਸ਼ਾਮਲ ਕਰਨਾ, ਜਿਵੇਂ ਕਿ @ਵਰਕਸਪੇਸ, ਸਾਰੇ ਸੰਬੰਧਿਤ ਰੂਟਾਂ ਨੂੰ ਬਦਲ ਕੇ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਪ੍ਰਸ਼ਾਸਨ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾ ਕੇ ਇਸ ਸਮੱਸਿਆ ਨੂੰ ਹੱਲ ਕਰ ਸਕਦਾ ਹੈ। ਡਿਵੈਲਪਰ ਸੰਰਚਨਾ ਗਲਤੀਆਂ ਦੀ ਸੰਭਾਵਨਾ ਨੂੰ ਘੱਟ ਕਰ ਸਕਦੇ ਹਨ ਅਤੇ ਉਪਨਾਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮੈਨੂਅਲ ਅੱਪਡੇਟ ਦੀ ਲੋੜ ਨੂੰ ਦੂਰ ਕਰ ਸਕਦੇ ਹਨ।
ਇਹ ਲੇਖ ਜਾਂਚ ਕਰੇਗਾ ਜੇ Nx ਜਾਂ ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਵਰਤਮਾਨ ਵਿੱਚ ਅਜਿਹੇ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ ਮੋਨੋਰੇਪੋਸ ਵਿੱਚ ਵਧੇਰੇ ਪ੍ਰਭਾਵੀ ਮਾਰਗ ਪ੍ਰਬੰਧਨ ਲਈ ਸੰਭਾਵੀ ਵਿਕਲਪਾਂ ਜਾਂ ਹੱਲ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ।
| ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
|---|---|
| lstatSync | ਕਿਸੇ ਫਾਈਲ ਜਾਂ ਡਾਇਰੈਕਟਰੀ ਦੀ ਫਾਈਲ ਸਿਸਟਮ ਸਥਿਤੀ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ, ਇਸ ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਵਰਕਸਪੇਸ ਦੇ ਦੁਆਲੇ ਘੁੰਮਣ ਦੀ ਅਗਵਾਈ ਕਰਕੇ, ਸਕ੍ਰਿਪਟ ਇਹ ਪਤਾ ਲਗਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦੀ ਹੈ ਕਿ ਕੀ ਪਾਥ ਇੱਕ ਡਾਇਰੈਕਟਰੀ ਜਾਂ ਫਾਈਲ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ। ਕਿਉਂਕਿ ਇਹ ਸਟੀਕ ਵੇਰਵਿਆਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਕੀ ਆਈਟਮ ਇੱਕ ਪ੍ਰਤੀਕ ਲਿੰਕ ਹੈ, ਇਹ ਆਮ ਫਾਈਲ ਓਪਰੇਸ਼ਨਾਂ ਨਾਲੋਂ ਵਧੇਰੇ ਖਾਸ ਹੈ। |
| readFileSync | ਇਸ ਕਮਾਂਡ ਦਾ ਉਦੇਸ਼ ਇੱਕ ਫਾਈਲ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਨਾਲ ਨਾਲ ਪੜ੍ਹਨਾ ਹੈ। ਦਾ ਡਾਟਾ ਲੋਡ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ project.json ਪ੍ਰੋਸੈਸਿੰਗ ਅਤੇ ਸੋਧ ਲਈ ਸਕ੍ਰਿਪਟ ਵਿੱਚ. ਇਹ ਸੈੱਟਅੱਪ ਦੇ ਪ੍ਰਬੰਧਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿਉਂਕਿ ਇਹ ਗਾਰੰਟੀ ਦਿੰਦਾ ਹੈ ਕਿ ਅਗਲੀ ਕਾਰਵਾਈ 'ਤੇ ਅੱਗੇ ਵਧਣ ਤੋਂ ਪਹਿਲਾਂ ਪੂਰੀ ਫਾਈਲ ਸਮੱਗਰੀ ਪਹੁੰਚਯੋਗ ਹੈ। |
| readdirSync | ਇਹ ਫੰਕਸ਼ਨ ਇੱਕ ਡਾਇਰੈਕਟਰੀ ਦੇ ਭਾਗਾਂ ਨੂੰ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ ਫਾਈਲ ਨਾਮਾਂ ਦੀ ਇੱਕ ਐਰੇ ਤਿਆਰ ਕਰਦਾ ਹੈ। ਇੱਥੇ, ਇਸਦੀ ਵਰਤੋਂ ਇੱਕ ਨਿਸ਼ਚਿਤ ਮਾਰਗ ਵਿੱਚ ਹਰੇਕ ਫਾਈਲ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਨ ਲਈ ਰਿਕਰਸਿਵ ਡਾਇਰੈਕਟਰੀ ਟਰਾਵਰਸਲ ਦੌਰਾਨ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸਾਰੇ ਢੁਕਵੇਂ ਲੱਭਣਾ ਅਤੇ ਅੱਪਡੇਟ ਕਰਨਾ project.json ਵਰਕਸਪੇਸ ਵਿੱਚ ਫਾਈਲਾਂ ਇਸ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀਆਂ ਹਨ। |
| overwrite | ਇੱਕ ਇਸਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਇੱਕ ਫਾਈਲ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਬਦਲਣ ਲਈ ਕਮਾਂਡ. ਬਦਲੇ ਗਏ ਸਕੀਮਾ ਮਾਰਗ ਵਿੱਚ ਓਵਰਰਾਈਟ ਕੀਤੇ ਗਏ ਹਨ project.json ਫਾਈਲ ਜਿਵੇਂ ਕਿ ਉਦਾਹਰਣ ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਸਵੈਚਲਿਤ ਕੋਡ ਜਨਰੇਟਿੰਗ ਓਪਰੇਸ਼ਨਾਂ ਲਈ ਬਹੁਤ ਉਪਯੋਗੀ ਹੈ, ਜੋ ਮਨੁੱਖੀ ਭਾਗੀਦਾਰੀ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਫਾਈਲ ਅੱਪਡੇਟ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦੇ ਹਨ। |
| visit | ਵਿਜ਼ਿਟ, ਇੱਕ Angular Schematics API ਵਿਧੀ, ਇੱਕ ਰੁੱਖ ਦੇ ਢਾਂਚੇ ਵਿੱਚ ਫਾਈਲਾਂ ਵਿੱਚ ਨੈਵੀਗੇਟ ਕਰਦੀ ਹੈ। ਇਹ ਹਰੇਕ ਨੂੰ ਲੱਭਣ ਅਤੇ ਤਿਆਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ project.json ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਸੰਪਾਦਨ ਲਈ ਫਾਈਲ. ਵੱਡੇ ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਸਕੈਨ ਕਰਨ ਅਤੇ ਕੋਈ ਵੀ ਮਹੱਤਵਪੂਰਨ ਅੱਪਡੇਟ ਨਾ ਗੁਆਉਣ ਦੇ ਉਦੇਸ਼ ਲਈ, ਇਹ ਫੰਕਸ਼ਨ ਜ਼ਰੂਰੀ ਹੈ। |
| JSON.parse | ਇੱਕ JSON ਸਤਰ ਤੋਂ ਇੱਕ JavaScript ਵਸਤੂ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ ਕਮਾਂਡ ਕੁੰਜੀ-ਮੁੱਲ ਦੇ ਜੋੜਿਆਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ ਅਤੇ ਮਾਰਗਾਂ ਨੂੰ ਸੋਧਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਤੱਕ ਡਾਟਾ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ project.json ਫਾਈਲਾਂ। ਇਹ ਸੰਰਚਨਾ ਫਾਈਲਾਂ ਵਿੱਚ ਪਾਏ ਗਏ ਢਾਂਚਾਗਤ ਡੇਟਾ ਨੂੰ ਬਦਲਣ ਲਈ ਜ਼ਰੂਰੀ ਹੈ। |
| path.join | ਇਹ ਤਕਨੀਕ ਪ੍ਰਦਾਨ ਕੀਤੇ ਗਏ ਸਾਰੇ ਪਾਥ ਹਿੱਸਿਆਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋ ਕੇ ਨਤੀਜੇ ਨੂੰ ਆਮ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ ਸਕ੍ਰਿਪਟ ਇਸਦੀ ਵਰਤੋਂ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਤੋਂ ਸੁਤੰਤਰ ਸੰਪੂਰਨ ਫਾਈਲ ਮਾਰਗ ਬਣਾਉਣ ਲਈ ਕਰਦੀ ਹੈ। ਇਹ ਮਾਰਗ ਰੈਜ਼ੋਲੂਸ਼ਨ ਅਤੇ ਅਨੁਕੂਲਤਾ ਵਿੱਚ ਸ਼ੁੱਧਤਾ ਦੀ ਗਾਰੰਟੀ ਦਿੰਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਮੋਨੋਰੇਪੋਸ ਵਿੱਚ ਵੱਡੇ, ਨੇਸਟਡ ਡਾਇਰੈਕਟਰੀ ਢਾਂਚੇ ਨਾਲ ਕੰਮ ਕਰਦੇ ਹੋ। |
| resolve | ਇਹ ਗਾਰੰਟੀ ਦੇਣ ਲਈ ਕਿ ਸਕ੍ਰਿਪਟ Nx ਵਰਕਸਪੇਸ ਵਿੱਚ ਇਕਸਾਰ ਰੂਟ ਡਾਇਰੈਕਟਰੀ ਤੋਂ ਲਾਂਚ ਹੁੰਦੀ ਹੈ, ਇਸ ਤੋਂ ਹੱਲ ਵਿਧੀ ਮਾਰਗ ਮੋਡੀਊਲ ਇੱਕ ਪੂਰਨ ਮਾਰਗ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਹ ਉਹਨਾਂ ਸਥਿਤੀਆਂ ਵਿੱਚ ਮਦਦਗਾਰ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਗਲਤੀਆਂ ਜਾਂ ਅਸਪਸ਼ਟਤਾ ਰਿਸ਼ਤੇਦਾਰ ਮਾਰਗਾਂ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਹੋ ਸਕਦੀ ਹੈ। |
| writeFileSync | ਇਹ ਕਮਾਂਡ ਸਮਕਾਲੀ ਰੂਪ ਵਿੱਚ ਇੱਕ ਫਾਈਲ ਵਿੱਚ ਡੇਟਾ ਲਿਖਦੀ ਹੈ। ਸਕੀਮਾ ਮਾਰਗਾਂ ਨੂੰ ਐਡਜਸਟ ਕੀਤੇ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਸਕ੍ਰਿਪਟ ਇਸ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨ ਲਈ ਵਰਤਦੀ ਹੈ project.json ਫਾਈਲਾਂ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਸਮਕਾਲੀ ਫਾਈਲ ਰਾਈਟਿੰਗ ਇਹ ਗਾਰੰਟੀ ਦੇਣ ਲਈ ਜ਼ਰੂਰੀ ਹੈ ਕਿ ਸਕ੍ਰਿਪਟ ਅਗਲੀ ਫਾਈਲ ਵਿੱਚ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ ਫਾਈਲ ਪੂਰੀ ਤਰ੍ਹਾਂ ਲਿਖੀ ਗਈ ਹੈ। |
Nx ਮੋਨੋਰੇਪੋ ਵਿੱਚ ਆਟੋਮੇਟਿੰਗ ਪਾਥ ਉਪਨਾਮ ਪ੍ਰਬੰਧਨ
ਪਹਿਲੀ ਸਕ੍ਰਿਪਟ ਉਦਾਹਰਨ ਗਲੋਬਲ ਪਾਥ ਉਪਨਾਮਾਂ ਨੂੰ ਬਦਲਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ 'ਤੇ ਕੇਂਦ੍ਰਤ ਕਰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ @ਵਰਕਸਪੇਸ, ਵਿੱਚ ਸੰਬੰਧਿਤ ਮਾਰਗਾਂ ਦੇ ਨਾਲ project.json ਫਾਈਲਾਂ। ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ Node.js, ਇਹ ਇੱਕ ਬੈਕਐਂਡ ਹੱਲ ਹੈ ਜਿੱਥੇ ਸਕ੍ਰਿਪਟ ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਲਈ ਡਾਇਰੈਕਟਰੀ ਢਾਂਚੇ ਦੀ ਖੋਜ ਕਰਦੀ ਹੈ। ਡਿਵੈਲਪਰ ਇਸ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਜ਼ਰੂਰੀ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦਸਤੀ ਦਖਲ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਮਾਰਗਾਂ ਨੂੰ ਸੋਧ ਸਕਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ readFileSync ਅਤੇ writeFileSync, ਜੋ ਖਾਸ ਤੌਰ 'ਤੇ ਇਹਨਾਂ ਸੰਰਚਨਾ ਫਾਇਲਾਂ ਨੂੰ ਬਦਲਣ ਲਈ ਬਣਾਏ ਗਏ ਹਨ। ਇਸ ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਨ ਨਾਲ, ਸੰਰਚਨਾ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਵਿੱਚ ਨੁਕਸ ਲਈ ਘੱਟ ਸੰਵੇਦਨਸ਼ੀਲ ਬਣ ਜਾਂਦੀ ਹੈ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਲੇਆਉਟ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਕਾਰਨ ਘੱਟ ਦਸਤੀ ਸੋਧਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
ਅਜਿਹਾ ਕਰਨ ਲਈ, ਸਕ੍ਰਿਪਟ ਪਹਿਲਾਂ ਵਰਤਦੇ ਹੋਏ ਫੋਲਡਰਾਂ ਨੂੰ ਪਾਰ ਕਰਦੀ ਹੈ readdirSync ਦੀ ਹਰ ਘਟਨਾ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ project.json Nx ਵਰਕਸਪੇਸ ਵਿੱਚ. ਦ lstatSync ਕਮਾਂਡ ਇਹ ਨਿਰਧਾਰਤ ਕਰਦੀ ਹੈ ਕਿ ਕੀ a project.json ਫਾਈਲ ਇੱਕ ਫਾਈਲ ਜਾਂ ਡਾਇਰੈਕਟਰੀ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਇਹ ਲੱਭ ਜਾਂਦੀ ਹੈ, ਸਕ੍ਰਿਪਟ ਨੂੰ ਸਿਰਫ ਢੁਕਵੀਂ ਫਾਈਲਾਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ JSON ਫਾਰਮੈਟ ਵਿੱਚ ਕੁੰਜੀ "$schema" ਦਾ ਪਤਾ ਲਗਾਉਣ ਤੋਂ ਬਾਅਦ "node_modules" ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਨ ਵਾਲੇ ਕਿਸੇ ਵੀ ਸੰਬੰਧਿਤ ਰੂਟਾਂ ਲਈ ਗਲੋਬਲ ਉਪਨਾਮ ਬਦਲਦਾ ਹੈ। ਆਖਰਕਾਰ, ਡਿਵੈਲਪਰ ਇੱਕ ਨਿਰਵਿਘਨ ਅਤੇ ਸਵੈਚਾਲਿਤ ਪ੍ਰਕਿਰਿਆ 'ਤੇ ਭਰੋਸਾ ਕਰ ਸਕਦੇ ਹਨ writeFileSync ਗਾਰੰਟੀ ਦਿੰਦਾ ਹੈ ਕਿ ਸੋਧੇ ਹੋਏ ਮਾਰਗ ਫਾਈਲ ਵਿੱਚ ਵਾਪਸ ਲਿਖੇ ਗਏ ਹਨ ਅਤੇ ਸੋਧਾਂ ਪ੍ਰਤੀਬੱਧ ਹਨ।
ਦੂਜੀ ਸਕ੍ਰਿਪਟ ਉਦਾਹਰਨ ਵਰਤ ਕੇ ਉਸੇ ਸਮੱਸਿਆ ਨੂੰ ਸੰਬੋਧਿਤ ਕਰਦੀ ਹੈ ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ, ਪਰ ਇਹ ਐਪਲੀਕੇਸ਼ਨ ਬਣਾਉਣ ਜਾਂ ਸੋਧਣ ਦੇ ਸਕੈਫੋਲਡਿੰਗ ਪੜਾਅ 'ਤੇ ਅਜਿਹਾ ਕਰਦਾ ਹੈ। ਐਂਗੁਲਰ ਵਿੱਚ, ਕੋਡ ਬਣਾਉਣ ਲਈ ਅਕਸਰ ਸਕੀਮਾ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਫੇਰੀ ਇਸ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਕਮਾਂਡ ਜ਼ਰੂਰੀ ਹੈ। ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਕੰਮ ਵਰਚੁਅਲ ਫਾਈਲ ਟ੍ਰੀ ਦੁਆਰਾ ਖੋਜ ਕਰਨਾ, ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਦਾ ਪਤਾ ਲਗਾਉਣਾ, ਅਤੇ ਫਿਰ ਗਲੋਬਲ ਉਪਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਉਹਨਾਂ ਫਾਈਲਾਂ ਵਿੱਚ "$ ਸਕੀਮਾ" ਮਾਰਗ ਨੂੰ ਬਦਲਣਾ ਹੈ। ਗਾਰੰਟੀ ਦੇਣ ਲਈ ਕਿ ਫਾਈਲਾਂ ਨੂੰ ਸਹੀ ਮਾਰਗ ਸੰਰਚਨਾ ਦੇ ਨਾਲ ਵਰਕਸਪੇਸ ਵਿੱਚ ਪੜ੍ਹਿਆ, ਸੰਪਾਦਿਤ ਕੀਤਾ ਅਤੇ ਲਿਖਿਆ ਗਿਆ ਹੈ, JSON.parse ਅਤੇ ਓਵਰਰਾਈਟ ਵਰਤੇ ਜਾਂਦੇ ਹਨ।
ਇਹਨਾਂ ਦੋਵਾਂ ਰਣਨੀਤੀਆਂ ਦਾ ਟੀਚਾ ਵੱਡੇ Nx monorepos ਬਣਾਉਣਾ ਹੈ। ਮਾਰਗ ਉਪਨਾਮ ਸੰਭਾਲਣ ਲਈ ਆਸਾਨ. ਜਦੋਂ ਕਿ Angular Schematics ਹੱਲ ਉਹਨਾਂ ਡਿਵੈਲਪਰਾਂ ਲਈ ਸੰਪੂਰਨ ਹੈ ਜੋ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹਨ ਕਿ ਨਵੇਂ ਬਣਾਏ ਪ੍ਰੋਜੈਕਟ ਜਾਂ ਸੰਸ਼ੋਧਨ ਆਪਣੇ ਆਪ ਗਲੋਬਲ ਉਪਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ, Node.js ਤਕਨੀਕ ਨੂੰ ਮੌਜੂਦਾ ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਸਕੈਨ ਅਤੇ ਅਪਡੇਟ ਕਰਨ ਲਈ ਸੁਤੰਤਰ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਕਿਉਂਕਿ ਇਹ ਸਕ੍ਰਿਪਟਾਂ ਮਾਡਿਊਲਰ ਅਤੇ ਮੁੜ ਵਰਤੋਂ ਯੋਗ ਹਨ, ਇਹਨਾਂ ਨੂੰ ਹੋਰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਫੈਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ project.json ਕੁੰਜੀਆਂ ਜਿਨ੍ਹਾਂ ਨੂੰ ਮਾਰਗ ਸੋਧਾਂ ਦੀ ਲੋੜ ਹੈ। ਇਹ ਵਰਕਸਪੇਸ ਦੀ ਲਚਕਤਾ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਦੀ ਸੌਖ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਸਮੇਂ ਦੇ ਨਾਲ ਫੈਲਦਾ ਹੈ।
Nx ਮੋਨੋਰੇਪੋ ਲਈ Node.js ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਮਾਰਗ ਉਪਨਾਮ ਨੂੰ ਲਾਗੂ ਕਰਨਾ
ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਏ Node.js ਸਕ੍ਰਿਪਟ, ਇਹ ਪਹੁੰਚ ਆਪਣੇ ਆਪ ਵਿੱਚ ਰਿਸ਼ਤੇਦਾਰ ਮਾਰਗਾਂ ਨੂੰ ਬਦਲ ਦਿੰਦੀ ਹੈ project.json ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਵਾਲੀਆਂ ਫਾਈਲਾਂ। ਇਹ ਇੱਕ ਬੈਕਐਂਡ ਆਟੋਮੇਸ਼ਨ ਹੱਲ ਹੈ ਜੋ ਗਤੀਸ਼ੀਲ ਰੂਪ ਵਿੱਚ ਵਰਤਣ ਲਈ ਮਾਰਗਾਂ ਨੂੰ ਸੋਧਦਾ ਹੈ @ਵਰਕਸਪੇਸ ਉਪਨਾਮ ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਫਾਈਲਾਂ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ।
// Import required modulesconst fs = require('fs');const path = require('path');// Define the path aliasconst workspaceAlias = '@workspace';// Function to replace relative paths in project.jsonfunction updateProjectJson(filePath) {const projectJson = JSON.parse(fs.readFileSync(filePath, 'utf8'));const schemaPath = projectJson['$schema'];// Replace relative paths with global aliasif (schemaPath.includes('../../../node_modules')) {projectJson['$schema'] = schemaPath.replace('../../../node_modules', `${workspaceAlias}/node_modules`);fs.writeFileSync(filePath, JSON.stringify(projectJson, null, 2));console.log(`Updated schema path in ${filePath}`);}}// Function to traverse directories and find all project.json filesfunction traverseDir(dir) {const files = fs.readdirSync(dir);files.forEach(file => {const fullPath = path.join(dir, file);if (fs.lstatSync(fullPath).isDirectory()) {traverseDir(fullPath);} else if (file === 'project.json') {updateProjectJson(fullPath);}});}// Start the directory traversal from the root of the workspaceconst rootDir = path.resolve(__dirname, '../../');traverseDir(rootDir);
ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਦੁਆਰਾ ਮਾਰਗ ਉਪਨਾਮ ਹੈਂਡਲਿੰਗ
ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਦੀ ਵਰਤੋਂ ਇਸ ਵਿਧੀ ਵਿੱਚ ਮਾਰਗ ਉਰਫ਼ ਸੋਧਾਂ ਨੂੰ ਸਵੈਚਾਲਿਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸਕੈਫੋਲਡਿੰਗ ਪੜਾਅ ਦੇ ਦੌਰਾਨ, ਯੋਜਨਾਬੱਧ ਅੱਪਡੇਟ ਕਰਦਾ ਹੈ project.json ਫਾਈਲਾਂ ਅਤੇ ਸਕੀਮਾ ਮਾਰਗਾਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਦਾ ਹੈ ਤਾਂ ਜੋ ਇਸ਼ਾਰਾ ਕੀਤਾ ਜਾ ਸਕੇ @ਵਰਕਸਪੇਸ ਉਪਨਾਮ
import { Rule, Tree } from '@angular-devkit/schematics';import { join } from 'path';export function updateSchemaPaths(): Rule {return (tree: Tree) => {tree.getDir('/').visit((filePath) => {if (filePath.endsWith('project.json')) {const content = tree.read(filePath)?.toString();if (content) {const json = JSON.parse(content);if (json['$schema']) {json['$schema'] = json['$schema'].replace('../../../node_modules','@workspace/node_modules');tree.overwrite(filePath, JSON.stringify(json, null, 2));}}}});return tree;};}
ਵੱਡੇ Nx ਮੋਨੋਰੇਪੋਸ ਵਿੱਚ ਮਾਰਗ ਪ੍ਰਬੰਧਨ ਵਿੱਚ ਸੁਧਾਰ ਕਰਨਾ
ਵੱਖ-ਵੱਖ ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਵਿੱਚ ਸੰਬੰਧਿਤ ਮਾਰਗਾਂ ਨੂੰ ਬਣਾਈ ਰੱਖਣਾ ਵੱਡੇ ਪੱਧਰ ਦੇ ਪ੍ਰਬੰਧਨ ਵਿੱਚ ਸਭ ਤੋਂ ਵੱਡੇ ਮੁੱਦਿਆਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ ਐਨਐਕਸ ਮੋਨੋਰੇਪੋ. ਜਿਵੇਂ ਕਿ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ ਬਦਲਦਾ ਹੈ, ਇਹ ਮਾਰਗ - ਜਿਵੇਂ ਕਿ ਵਿੱਚ ਸਕੀਮਾਂ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦੇ ਹਨ project.json ਫਾਈਲ - ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਚੁਣੌਤੀਪੂਰਨ ਹੋ ਸਕਦਾ ਹੈ। ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆਵਾਂ ਘੱਟ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਬਣ ਜਾਂਦੀਆਂ ਹਨ ਜਦੋਂ ਟੀਮਾਂ ਨੂੰ ਸਮੱਸਿਆਵਾਂ ਦਾ ਅਨੁਭਵ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਡਾਇਰੈਕਟਰੀਆਂ ਬਦਲਦੀਆਂ ਹਨ ਅਤੇ ਮਾਰਗਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਇੱਕ ਸਮਾਨ ਪਹੁੰਚ ਦੀ ਘਾਟ ਹੁੰਦੀ ਹੈ। ਜੋੜ ਰਿਹਾ ਹੈ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ, ਜਿਵੇਂ @ਵਰਕਸਪੇਸ, ਇਹਨਾਂ ਰੂਟਾਂ ਨੂੰ ਬਣਾਈ ਰੱਖਣ ਵਿੱਚ ਸ਼ਾਮਲ ਕੋਸ਼ਿਸ਼ਾਂ ਨੂੰ ਮਹੱਤਵਪੂਰਨ ਤੌਰ 'ਤੇ ਘਟਾ ਸਕਦਾ ਹੈ।
ਵਾਰ-ਵਾਰ ਮੈਨੂਅਲ ਅੱਪਡੇਟ ਦੀ ਲੋੜ ਨੂੰ ਘਟਾਉਣ ਤੋਂ ਇਲਾਵਾ, ਗਲੋਬਲ ਰੂਟ ਉਪਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਦੀ ਮਜ਼ਬੂਤੀ ਨੂੰ ਮਜ਼ਬੂਤ ਕਰਦਾ ਹੈ। ਟੀਮਾਂ ਆਪਣੇ ਵਿਕਾਸ ਕਾਰਜਾਂ 'ਤੇ ਧਿਆਨ ਕੇਂਦ੍ਰਤ ਕਰ ਸਕਦੀਆਂ ਹਨ, ਬਿਨਾਂ ਪਥ ਦੇ ਸੰਸ਼ੋਧਨਾਂ ਬਾਰੇ ਚਿੰਤਾ ਕੀਤੇ ਮਾਰਗ ਸੰਬੰਧੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਦੂਰ ਕਰਕੇ। ਆਟੋਮੇਸ਼ਨ ਟੂਲਸ ਜਿਵੇਂ ਕਿ ਐਂਗੁਲਰ ਐਪਸ ਨੂੰ ਬਣਾਉਣ ਅਤੇ ਸੰਰਚਿਤ ਕਰਨ ਵੇਲੇ ਇਹ ਬਹੁਤ ਉਪਯੋਗੀ ਹੈ VSCode ਐਕਸਟੈਂਸ਼ਨਾਂ. ਜਦੋਂ ਇੱਕ ਯੂਨੀਫਾਈਡ ਪਾਥ ਉਪਨਾਮ ਸਿਸਟਮ ਮੌਜੂਦ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਐਕਸਟੈਂਸ਼ਨਾਂ ਵਧੇਰੇ ਸੁਚਾਰੂ ਢੰਗ ਨਾਲ ਕੰਮ ਕਰ ਸਕਦੀਆਂ ਹਨ ਅਤੇ ਗਲਤ ਮਾਰਗ ਰੈਜ਼ੋਲਿਊਸ਼ਨ ਦੁਆਰਾ ਕੀਤੀਆਂ ਗਲਤ ਸੰਰਚਨਾਵਾਂ ਤੋਂ ਬਚ ਸਕਦੀਆਂ ਹਨ।
ਵਿੱਚ ਸਾਰੀਆਂ ਕੁੰਜੀਆਂ ਵਿੱਚ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ project.json ਮੌਜੂਦਾ ਤੌਰ 'ਤੇ ਉਪਲਬਧ Nx ਅਤੇ Angular ਟੂਲਸ ਦੁਆਰਾ ਸਮਰਥਿਤ ਨਹੀਂ ਹਨ, ਪਰ ਇਹ ਈਕੋਸਿਸਟਮ ਲਈ ਇੱਕ ਲਾਭਦਾਇਕ ਵਾਧਾ ਹੋਵੇਗਾ। ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਸਹਿਯੋਗ ਨੂੰ ਜੋੜਨ ਨਾਲ ਸੰਰਚਨਾ ਪ੍ਰਬੰਧਨ ਨੂੰ ਸੁਚਾਰੂ ਬਣਾਇਆ ਜਾਵੇਗਾ ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਢਾਂਚੇ ਦੀ ਅਨੁਕੂਲਤਾ ਵਿੱਚ ਵਾਧਾ ਹੋਵੇਗਾ। Nx ਜਾਂ Angular ਟੀਮਾਂ ਨੂੰ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਬੇਨਤੀ ਨੂੰ ਸਪੁਰਦ ਕਰਨਾ ਆਉਣ ਵਾਲੀਆਂ ਰੀਲੀਜ਼ਾਂ ਵਿੱਚ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਨੂੰ ਸਮਰੱਥ ਬਣਾ ਸਕਦਾ ਹੈ, ਜੋ ਕਿ ਬਹੁਤ ਸਾਰੇ ਉੱਦਮਾਂ ਲਈ ਫਾਇਦੇਮੰਦ ਹੋਵੇਗਾ ਜੋ ਗੁੰਝਲਦਾਰ ਮੋਨੋਰੇਪੋਜ਼ ਨੂੰ ਸੰਭਾਲਦੇ ਹਨ।
Nx Monorepos ਵਿੱਚ ਮਾਰਗਾਂ ਦੇ ਪ੍ਰਬੰਧਨ ਬਾਰੇ ਆਮ ਸਵਾਲ
- ਇੱਕ Nx ਮੋਨੋਰੇਪੋ ਵਿੱਚ, ਮੈਂ ਇੱਕ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਕਿਵੇਂ ਸਥਾਪਿਤ ਕਰ ਸਕਦਾ ਹਾਂ?
- ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਇਸ ਸਮੇਂ Nx ਦੁਆਰਾ ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰਥਿਤ ਨਹੀਂ ਹਨ। ਪਰ ਤੁਸੀਂ ਉੱਪਰ ਦਿੱਤੀਆਂ ਸੂਚੀਆਂ ਵਰਗੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੀਆਂ ਸਾਰੀਆਂ ਪ੍ਰੋਜੈਕਟ ਫਾਈਲਾਂ ਦੇ ਸੰਬੰਧਿਤ ਮਾਰਗਾਂ ਨੂੰ ਗਲੋਬਲ ਉਪਨਾਮਾਂ ਵਿੱਚ ਬਦਲਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰ ਸਕਦੇ ਹੋ।
- ਕੀ ਮੈਂ ਮਾਰਗ ਉਪਨਾਮਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਐਂਗੁਲਰ ਸਕੀਮਾਟਿਕਸ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦਾ ਹਾਂ?
- ਇੱਕ ਵਿਲੱਖਣ ਯੋਜਨਾਬੰਦੀ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਸੰਭਵ ਹੈ ਜੋ ਬਦਲਦਾ ਹੈ project.json ਸਕੈਫੋਲਡਿੰਗ ਦੌਰਾਨ ਫਾਈਲ. ਹੁਕਮ overwrite ਅਤੇ visit ਉਪਨਾਮਾਂ ਨੂੰ ਮਾਰਗਾਂ ਲਈ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਬਦਲਣ ਦੀ ਆਗਿਆ ਦਿਓ।
- ਜਦੋਂ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ ਬਦਲਦੇ ਹਨ, ਤਾਂ ਰਿਸ਼ਤੇਦਾਰ ਮਾਰਗਾਂ ਨੂੰ ਸਭ ਤੋਂ ਵਧੀਆ ਕਿਵੇਂ ਸੰਭਾਲਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ?
- ਇਹ ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ ਕਿ ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਜਾਂ ਵਰਤਦੇ ਹੋਏ ਮਾਰਗ ਪ੍ਰਬੰਧਨ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰੋ Node.js. ਮੈਨੁਅਲ ਦਖਲਅੰਦਾਜ਼ੀ ਨੂੰ ਰੋਕਣ ਲਈ, ਤੁਸੀਂ ਪਾਥਾਂ ਨੂੰ ਸਕੈਨ ਕਰਨ ਅਤੇ ਅੱਪਡੇਟ ਕਰਨ ਲਈ ਸਕ੍ਰਿਪਟਾਂ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।
- ਕੀ ਮੈਨੂੰ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੇ ਮੁੱਦੇ ਨੂੰ ਐਂਗੁਲਰ ਜਾਂ ਐਨਐਕਸ ਨਾਲ ਲਿਆਉਣਾ ਚਾਹੀਦਾ ਹੈ?
- Nx ਨਾਲ ਵਿਸ਼ੇਸ਼ਤਾ ਬੇਨਤੀ ਨੂੰ ਵਧਾਉਣਾ ਸੰਭਵ ਤੌਰ 'ਤੇ ਵਧੇਰੇ ਢੁਕਵਾਂ ਹੋਵੇਗਾ ਕਿਉਂਕਿ ਇਹ Nx ਵਰਕਸਪੇਸ ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਸੰਰਚਨਾ ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ। ਹਾਲਾਂਕਿ, ਇਹ ਸਮਰੱਥਾ ਐਂਗੁਲਰ ਦੀ ਸਕੀਮਾਟਿਕਸ ਲਈ ਵੀ ਉਪਯੋਗੀ ਹੋ ਸਕਦੀ ਹੈ।
- ਕੀ ਇੱਥੇ ਹੋਰ ਸਾਧਨ ਹਨ ਜੋ ਮਾਰਗ ਅਲੀਸਿੰਗ ਨੂੰ ਸੰਭਾਲਦੇ ਹਨ?
- ਹਾਂ, ਪਾਥ ਅਲੀਸਿੰਗ ਕੁਦਰਤੀ ਤੌਰ 'ਤੇ ਵੈਬਪੈਕ ਅਤੇ ਟਾਈਪਸਕ੍ਰਿਪਟ ਵਰਗੇ ਪ੍ਰੋਗਰਾਮਾਂ ਦੁਆਰਾ ਸਮਰਥਿਤ ਹੈ। ਦੂਜੇ ਪਾਸੇ, ਇੱਥੇ ਹੱਲ ਕੀਤੀ ਜਾ ਰਹੀ ਸਮੱਸਿਆ ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਲਈ ਵਿਲੱਖਣ ਹੈ, ਜਦੋਂ ਕਿ ਇਹ ਆਮ ਤੌਰ 'ਤੇ ਬਿਲਡ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ।
Nx ਵਿੱਚ ਮਾਰਗ ਉਪਨਾਮ ਸਮਰਥਨ ਬਾਰੇ ਅੰਤਿਮ ਵਿਚਾਰ
ਇੱਕ Nx ਮੋਨੋਰੇਪੋ ਵਿੱਚ, ਰਿਸ਼ਤੇਦਾਰ ਮਾਰਗਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਚੁਣੌਤੀਪੂਰਨ ਹੋ ਸਕਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜੇਕਰ ਫੋਲਡਰਾਂ ਨੂੰ ਮੁੜ ਵਿਵਸਥਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਵਿਕਾਸ ਕਾਰਜ ਪ੍ਰਵਾਹ ਨੂੰ ਇੱਕ ਗਲੋਬਲ ਮਾਰਗ ਉਪਨਾਮ ਦੁਆਰਾ ਵਧਾਇਆ ਜਾਵੇਗਾ, ਜਿਵੇਂ ਕਿ @ਵਰਕਸਪੇਸ, ਜੋ ਸੈੱਟਅੱਪ ਨੂੰ ਮਜ਼ਬੂਤ ਕਰੇਗਾ ਅਤੇ ਵਾਰ-ਵਾਰ ਸੋਧਾਂ ਦੀ ਲੋੜ ਨੂੰ ਘੱਟ ਕਰੇਗਾ।
ਜਦੋਂ ਕਿ ਵਿੱਚ ਸਾਰੀਆਂ ਕੁੰਜੀਆਂ ਲਈ ਗਲੋਬਲ ਉਪਨਾਮਾਂ ਲਈ ਵਿਆਪਕ ਸਮਰਥਨ ਨਹੀਂ ਹੈ project.json Nx ਅਤੇ Angular Schematics ਵਿੱਚ ਇਸ ਸਮੇਂ, ਸਕ੍ਰਿਪਟਾਂ ਨਾਲ ਇਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨਾ ਸੰਭਵ ਹੈ। ਵੱਡੀਆਂ ਟੀਮਾਂ ਨੂੰ ਆਗਾਮੀ Nx ਰੀਲੀਜ਼ਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾਣ ਵਾਲੇ ਇਸ ਸਮਰਥਨ ਤੋਂ ਲਾਭ ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ ਉਹ ਇੱਕ ਵਿਸ਼ੇਸ਼ਤਾ ਬੇਨਤੀ ਜਮ੍ਹਾਂ ਕਰਦੇ ਹਨ।
Nx ਵਿੱਚ ਮਾਰਗ ਉਪਨਾਮ ਸਹਿਯੋਗ ਲਈ ਸਰੋਤ ਅਤੇ ਹਵਾਲੇ
- Nx ਮਾਰਗ ਸੰਰਚਨਾ ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਪ੍ਰਬੰਧਨ ਬਾਰੇ ਜਾਣਕਾਰੀ, ਮੌਜੂਦਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ ਸੀਮਾਵਾਂ ਦੀ ਸੂਝ ਸਮੇਤ। Nx ਦਸਤਾਵੇਜ਼
- Angular Schematics ਫਾਈਲ ਅੱਪਡੇਟ ਅਤੇ ਪਾਥ ਕੌਂਫਿਗਰੇਸ਼ਨ ਨੂੰ ਕਿਵੇਂ ਸੰਭਾਲਦਾ ਹੈ ਇਸ ਬਾਰੇ ਵੇਰਵੇ। ਐਂਗੁਲਰ ਸਕਿਮੈਟਿਕਸ ਗਾਈਡ
- Nx monorepos ਵਿੱਚ ਗਲੋਬਲ ਮਾਰਗ ਅਲੀਅਸਿੰਗ ਬਾਰੇ ਭਾਈਚਾਰਕ ਚਰਚਾ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾ ਬੇਨਤੀਆਂ। Nx GitHub ਮੁੱਦੇ