ali-translator / translation-js-integrate
v0.3.1
2022-10-02 08:25 UTC
Requires
- php: >=7.1
- ext-json: *
- ali-translator/translator: ^0
Requires (Dev)
- php: >=7.3.0
- phpunit/phpunit: ^9.0
- symfony/var-dumper: ^5.0
This package is auto-updated.
Last update: 2022-10-02 08:26:30 UTC
README
为ali-translator/translator提供的附加包,帮助将其翻译器集成到前端js。
安装
$ composer require ali-translator/translator-js-integrate
初始化
由于此包扩展自ali-translator/translator,首先需要创建$translator
和包装器,以及其翻译的向量$plaiTranslator
然后,将src/assets/js/ali-translator.js
脚本包含到您的html代码中。
之后,创建ALIAbsTranslatorJs
的实例
use ALI\TranslatorJsIntegrate\ALIAbcTranslatorJs; use ALI\Translator\PlainTranslator\PlainTranslator; /** @var PlainTranslator $plainTranslator */ $ALIAbcTranslatorJs = new ALIAbcTranslatorJs($plainTranslator);
基本用法
php
use \ALI\TranslatorJsIntegrate\ALIAbcTranslatorJs; /** @var ALIAbcTranslatorJs $aLIAbsTranslatorJs */ // $aliAbc->saveTranslate('Hello {object}!', 'Привіт {object}!'); $aLIAbsTranslatorJs->addOriginals(['Hello {object}!']); $startUpJsCode = $aLIAbsTranslatorJs->generateStartupJs('__t');
html
<html> <head> <script src="/js/ali-translator.js"></script> <script><?= $startUpJsCode ?></script> </head> <body>...</body> </html>
js
alert(__t('Hello {object}!',{ 'object' : 'sun' }))
测试
包中存在用于测试的环境的docker-compose文件。
docker-compose run php composer install docker-compose run php vendor/bin/phpunit