四、UI-Grid i18n

原文:104 i18n
UI-Grid可以使用 i18nService更改默认语言、添加翻译或更改现有的翻译。

设置语言的最简单的方法是将 表格放在 ui-i18n指令的div内。

<div ui-i18n="{{lang}}">

页面内只能运行一个ui-i18n指令。当前的语言设置存储在 i18n service(Singleton)中,所以目前还没有办法在单个APP上应用一种以上的语言。

i18nService.setCurrentLang('fr');

使用angular-translate翻译头部标题的例子可以参照http://plnkr.co/edit/KnrKTst5dWXvlZNeIy9c?p=preview

代码:
index.html

<!doctype html>
<html ng-app="app">
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-touch.js"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-animate.js"></script>
    <script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script>
    <script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script>
    <script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script>
    <script src="/release/ui-grid.js"></script>
    <script src="/release/ui-grid.css"></script>
    <script src="app.js"></script>
  </head>
  <body>
    <div ng-controller="MainCtrl">
      <select ng-model="lang" ng-options="l for l in langs"></select><br>
    
      <div ui-i18n="{{lang}}">
         <p>Using attribute:</p>
         <p ui-t="groupPanel.description"></p>
         <br/>
         <p>Using Filter:</p>
         <p>{{"groupPanel.description" | t}}</p>
    
         <p>Click the header menu to see language. NOTE: TODO: header text does not change after grid is rendered. </p>
    
         <div ui-grid="gridOptions" class="grid"></div>
      </div>
    
    </div>
  </body>
</html>

mian.css

.grid {
  width: 500px;
  height: 250px;
}

app.js

var app = angular.module('app', ['ngTouch', 'ui.grid']);
 
app.controller('MainCtrl', ['$scope', 'i18nService', '$http', function ($scope, i18nService, $http) {
  $scope.langs = i18nService.getAllLangs();
  $scope.lang = 'nl';
 
  $scope.gridOptions = {
    columnDefs: [
      { field: 'name' },
      { field: 'gender' },
      { field: 'company', enableFiltering: false  }
    ]
  };
 
  $http.get('/data/100.json')
  .success(function(data) {
    $scope.gridOptions.data = data;
  });
}]);

Demo
这里写图片描述

文章来源:西柚叨叨的个人博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值