|
1419 | 1419 | angular.module('app').controller('Dashboard', d);function d(a, b) { }
|
1420 | 1420 | ```
|
1421 | 1421 |
|
1422 |
| -### Manually Identify Dependencies |
| 1422 | +### Определяйте Зависимости Вручную |
1423 | 1423 | ###### [Style [Y091](#style-y091)]
|
1424 | 1424 |
|
1425 |
| - - Use `$inject` to manually identify your dependencies for AngularJS components. |
| 1425 | + - Используйте `$inject` для ручного определения ваших зависимостей для AngulaJS. |
1426 | 1426 |
|
1427 |
| - *Why?*: This technique mirrors the technique used by [`ng-annotate`](https://github.com/olov/ng-annotate), which I recommend for automating the creation of minification safe dependencies. If `ng-annotate` detects injection has already been made, it will not duplicate it. |
| 1427 | + *Почему?*: Этот техника отражает технику использованную в [`ng-annotate`](https://github.com/olov/ng-annotate), которую я рекомендую для автоматического создания зависимостей, безопасных для минификации. Если `ng-annotate` обнаруживает вставку(injection), которая уже была, то она не будет продублирована. |
1428 | 1428 |
|
1429 |
| - *Why?*: This safeguards your dependencies from being vulnerable to minification issues when parameters may be mangled. For example, `common` and `dataservice` may become `a` or `b` and not be found by AngularJS. |
| 1429 | + *Почему?*: Это гарантирует вашим зависимостям защиту от повреждений, которую может нанести минификация, путем урезания и укорачивания переменных. Например, `common` и `dataservice` превратятся `a` и `b`, и не будут найдены средой AngularJS. |
1430 | 1430 |
|
1431 |
| - *Why?*: Avoid creating in-line dependencies as long lists can be difficult to read in the array. Also it can be confusing that the array is a series of strings while the last item is the component's function. |
| 1431 | + *Почему?*: Избегайте создания однострочных зависимостей в виде длинных списков, которые трудно читаемы в массиве. Еще в вводят в конфуз, то что такие массивы сосотоят из серии строк, в то время как последний элемент - это компонент-функция. |
1432 | 1432 |
|
1433 | 1433 | ```javascript
|
1434 |
| - /* avoid */ |
| 1434 | + /* избегайте этого */ |
1435 | 1435 | angular
|
1436 | 1436 | .module('app')
|
1437 | 1437 | .controller('Dashboard',
|
|
1441 | 1441 | ```
|
1442 | 1442 |
|
1443 | 1443 | ```javascript
|
1444 |
| - /* avoid */ |
| 1444 | + /* избегайте этого */ |
1445 | 1445 | angular
|
1446 | 1446 | .module('app')
|
1447 | 1447 | .controller('Dashboard',
|
|
1452 | 1452 | ```
|
1453 | 1453 |
|
1454 | 1454 | ```javascript
|
1455 |
| - /* recommended */ |
| 1455 | + /* рекомендовано */ |
1456 | 1456 | angular
|
1457 | 1457 | .module('app')
|
1458 | 1458 | .controller('Dashboard', Dashboard);
|
|
1463 | 1463 | }
|
1464 | 1464 | ```
|
1465 | 1465 |
|
1466 |
| - Note: When your function is below a return statement the $inject may be unreachable (this may happen in a directive). You can solve this by either moving the $inject above the return statement or by using the alternate array injection syntax. |
| 1466 | + Замечание: Если функция снизу является возращаемым значением, то $inject может быть недостижымым (это может случится в директиве). Это можно решить перемещением $inject выше, чем возращаемое значение, либо использовать альтернативный синтаксис массива вставок. |
1467 | 1467 |
|
1468 |
| - Note: [`ng-annotate 0.10.0`](https://github.com/olov/ng-annotate) introduced a feature where it moves the `$inject` to where it is reachable. |
| 1468 | + Замечание: [`ng-annotate 0.10.0`](https://github.com/olov/ng-annotate) ввело возможность, когда `$inject` переносится туда, где оно доступно. |
1469 | 1469 |
|
1470 | 1470 | ```javascript
|
1471 |
| - // inside a directive definition |
| 1471 | + // внутри определения директивы |
1472 | 1472 | function outer() {
|
1473 | 1473 | return {
|
1474 | 1474 | controller: DashboardPanel,
|
1475 | 1475 | };
|
1476 | 1476 |
|
1477 |
| - DashboardPanel.$inject = ['logger']; // Unreachable |
| 1477 | + DashboardPanel.$inject = ['logger']; // Недоступный код |
1478 | 1478 | function DashboardPanel(logger) {
|
1479 | 1479 | }
|
1480 | 1480 | }
|
1481 | 1481 | ```
|
1482 | 1482 |
|
1483 | 1483 | ```javascript
|
1484 |
| - // inside a directive definition |
| 1484 | + // внутри определения директивы |
1485 | 1485 | function outer() {
|
1486 |
| - DashboardPanel.$inject = ['logger']; // reachable |
| 1486 | + DashboardPanel.$inject = ['logger']; // Доступный код |
1487 | 1487 | return {
|
1488 | 1488 | controller: DashboardPanel,
|
1489 | 1489 | };
|
|
0 commit comments