mirror of
				https://github.com/yiisoft/yii2.git
				synced 2025-11-04 06:37:55 +08:00 
			
		
		
		
	@ -169,10 +169,10 @@ AppAsset::register($this);  // $this - представляет собой об
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
### Динамические Комплекты Ресурсов <span id="dynamic-asset-bundles"></span>
 | 
					### Динамические Комплекты Ресурсов <span id="dynamic-asset-bundles"></span>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Поскольку комлект ресурсов это обычный PHP класс, он может содержать дополнительную логику, связанную с ним, и может
 | 
					Поскольку комплект ресурсов это обычный PHP класс, он может содержать дополнительную логику, связанную с ним, и может
 | 
				
			||||||
корректировать свои внутренние параметры динамически. Например, вы можете использовать сложную JavaScript библиотеку,
 | 
					корректировать свои внутренние параметры динамически. Например, вы можете использовать сложную JavaScript библиотеку,
 | 
				
			||||||
которая предоставляет интернационализацию через отдельные исходные файлы: по одному на каждый поддерживаемый язык.
 | 
					которая предоставляет интернационализацию через отдельные исходные файлы: по одному на каждый поддерживаемый язык.
 | 
				
			||||||
Таким образом, вам нужно добать определенный '.js' файл на вашу страницу, чтобы применить перевод для библиотеки.
 | 
					Таким образом, вам нужно добавить определенный '.js' файл на вашу страницу, чтобы применить перевод для библиотеки.
 | 
				
			||||||
Этого можно достичь, переопределив метод [yii\web\AssetBundle::init()]:
 | 
					Этого можно достичь, переопределив метод [yii\web\AssetBundle::init()]:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```php
 | 
					```php
 | 
				
			||||||
@ -196,7 +196,7 @@ class SophisticatedAssetBundle extends AssetBundle
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Конкретный комлект ресурсов может быть также изменен через его экземпляр, возвращенный методом [[yii\web\AssetBundle::register()]].
 | 
					Конкретный комплект ресурсов может быть также изменен через его экземпляр, возвращенный методом [[yii\web\AssetBundle::register()]].
 | 
				
			||||||
Например:
 | 
					Например:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```php
 | 
					```php
 | 
				
			||||||
@ -207,7 +207,7 @@ $bundle = SophisticatedAssetBundle::register(Yii::$app->view);
 | 
				
			|||||||
$bundle->js[] = 'i18n/' . Yii::$app->language . '.js'; // dynamic file added
 | 
					$bundle->js[] = 'i18n/' . Yii::$app->language . '.js'; // dynamic file added
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> Замечание: несмотря на то что динамическая корректрировка комлекта ресурсов поддерживается, ее использование - это
 | 
					> Замечание: несмотря на то что динамическая корректрировка комплекта ресурсов поддерживается, ее использование - это
 | 
				
			||||||
  **плохая** практика, которая может привести к неожиданным побочных эффектам, и которой следует избегать.
 | 
					  **плохая** практика, которая может привести к неожиданным побочных эффектам, и которой следует избегать.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -264,10 +264,10 @@ return [
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Можно также запретить *все* комплекты ресурсов, установив [[yii\web\AssetManager::bundles]] как `false`.
 | 
					Можно также запретить *все* комплекты ресурсов, установив [[yii\web\AssetManager::bundles]] как `false`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Имейте в виду, что настройки, установленный через [[yii\web\AssetManager::bundles]], применяются в момент создания комлекта
 | 
					Имейте в виду, что настройки, установленный через [[yii\web\AssetManager::bundles]], применяются в момент создания комплекта
 | 
				
			||||||
ресурсов, т.е. в момент срабатывания конструктора. Таким образом, любые изменения, которые произведены над экземпляром
 | 
					ресурсов, т.е. в момент срабатывания конструктора. Таким образом, любые изменения, которые произведены над экземпляром
 | 
				
			||||||
комлекта ресурсов после этого, перекроют настройки, установленные на уровне [[yii\web\AssetManager::bundles]].
 | 
					комплекта ресурсов после этого, перекроют настройки, установленные на уровне [[yii\web\AssetManager::bundles]].
 | 
				
			||||||
В частности, изменения, произведенные внутри метода [[yii\web\AssetBundle::init()]] или после регистрации комлекта ресурсов,
 | 
					В частности, изменения, произведенные внутри метода [[yii\web\AssetBundle::init()]] или после регистрации комплекта ресурсов,
 | 
				
			||||||
имеют приоритет над настройками `AssetManager`.
 | 
					имеют приоритет над настройками `AssetManager`.
 | 
				
			||||||
Ниже приведены примеры, в которых значения, установленные через [[yii\web\AssetManager::bundles]] не возымеют никакого эффекта:
 | 
					Ниже приведены примеры, в которых значения, установленные через [[yii\web\AssetManager::bundles]] не возымеют никакого эффекта:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -523,8 +523,8 @@ return [
 | 
				
			|||||||
То есть, массив конфигурации комплекта ресурсов сохраняется в `assets-prod.php` для режима продакшена, и в `assets-dev.php` для режима не продакшена (разработки).
 | 
					То есть, массив конфигурации комплекта ресурсов сохраняется в `assets-prod.php` для режима продакшена, и в `assets-dev.php` для режима не продакшена (разработки).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> Замечание: этот механизм объединения комплектов ресурсов основан на способности [[yii\web\AssetManager::bundles]] перекрывать
 | 
					> Замечание: этот механизм объединения комплектов ресурсов основан на способности [[yii\web\AssetManager::bundles]] перекрывать
 | 
				
			||||||
  поля регистрируемых комплектов ресурсов. Однако, как уже было сказано выше, эта возможность не распрастраняется на
 | 
					  поля регистрируемых комплектов ресурсов. Однако, как уже было сказано выше, эта возможность не распространяется на
 | 
				
			||||||
  изменения, внесенные в комлекты ресурсов на уровне метода [[yii\web\AssetBundle::init()]] ил после регистрации. Вам
 | 
					  изменения, внесенные в комплекты ресурсов на уровне метода [[yii\web\AssetBundle::init()]] ил после регистрации. Вам
 | 
				
			||||||
  следует избегать использования динамических комплектов ресурсов в процессе объединения.
 | 
					  следует избегать использования динамических комплектов ресурсов в процессе объединения.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -596,7 +596,7 @@ yii asset assets.php config/assets-prod.php
 | 
				
			|||||||
  [[yii\web\AssetManager::assetMap]], и хотите, чтобы эти настройки применились для исходных файлов для сжатия,
 | 
					  [[yii\web\AssetManager::assetMap]], и хотите, чтобы эти настройки применились для исходных файлов для сжатия,
 | 
				
			||||||
  вы должны занести эти опции в раздел `assetManager` файла кофигурации для команды `asset`.
 | 
					  вы должны занести эти опции в раздел `assetManager` файла кофигурации для команды `asset`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
> Замечание: составляя набор исходных комлектор ресурсов для сжатия, следует избегать использования таких, чьи параметры
 | 
					> Замечание: составляя набор исходных комплектор ресурсов для сжатия, следует избегать использования таких, чьи параметры
 | 
				
			||||||
  могут изменяться динамически (т.е. на уровне метода `init()` или после регистрации), поскольку они могут функционировать
 | 
					  могут изменяться динамически (т.е. на уровне метода `init()` или после регистрации), поскольку они могут функционировать
 | 
				
			||||||
  неправильно после сжатия.
 | 
					  неправильно после сжатия.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user