Angular JS中的动态语言翻译

时间:2020-08-04 07:34:57

标签: javascript json angularjs angular-translate ngx-translate

我是Angular JS的新手,并且刚刚开始学习...我已经在Angular JS中构建了一个基本的Web应用程序,并尝试将其转换为其他语言。

要进行转换,对于静态文本,我可以在 script.js 中编写翻译词。有人可以帮助我进行动态文本翻译吗。而不是静态的。

下面是我的代码

index.html

<!DOCTYPE html>
<html ng-app="myApp">
<html ng-app="plunker" >

  <head>
    <script data-require="angular.js@1.3.8" data-semver="1.3.8" src="https://code.angularjs.org/1.3.8/angular.js"></script>
    <script data-require="angular-translate@*" data-semver="2.5.0" src="https://cdn.rawgit.com/angular-translate/bower-angular-translate/2.5.0/angular-translate.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js"></script>
     <meta charset="utf-8">
  
  </head>

  <body>
    <div ng-controller="translateController">
      <h1>Demo for angularJS translator</h1>
      
      <div>
        <button ng-click="changeLanguage('en')">English</button>
        <button ng-click="changeLanguage('sp')">Spanish</button>
      </div>
         
      <h2>{{'language' | translate}}</h2>
      
      Hello!!!
      
        <form>
    Name: <input type="text" ng-model="firstname">
  </form>
  <h3>You entered: {{firstname}}</h3>
      
      <p>{{'firstname' | translate}}</p>
      
      <hr />
      
        <form>
    Designation: <input type="text" ng-model="designation">
  </form>
  <h3>You entered: {{designation}}</h3>
  
   <p>{{'designation' | translate}}</p>
  <hr />
   </div>
    
  </body>

</html>
`

scripts.js

var app = angular.module("myApp",['pascalprecht.translate']);

app.config(["$translateProvider", function($translateProvider){
  
  var en_translations = {
    "language" : "Selected Language English",
    "firstname" : "Welcome RR", 
    "designation": "SRE"
  }
  
  var sp_translations = {
    "language" : "Selected Language Spanish",
    "firstname" : "Bienvenida shwettha",
    "designation": "SRE"    
  }
  
  $translateProvider.translations('en',en_translations);
  
  $translateProvider.translations('sp',sp_translations);
  
  $translateProvider.preferredLanguage('en');
  
}]);

app.controller("translateController" ,["$scope","$translate",function($scope,$translate){
  $scope.changeLanguage = function(lang){
   $translate.use(lang); 
  }
}]);

0 个答案:

没有答案
相关问题