Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在AngularJS脚本中使用孟加拉语?_Javascript_Angularjs_Json_Angularjs Directive - Fatal编程技术网

Javascript 如何在AngularJS脚本中使用孟加拉语?

Javascript 如何在AngularJS脚本中使用孟加拉语?,javascript,angularjs,json,angularjs-directive,Javascript,Angularjs,Json,Angularjs Directive,我有一个使用Angular的应用程序。我正在加载一个JSON文件,用不同的语言在页面上显示数据。到目前为止,这适用于所有其他语言,但当变量值是孟加拉语时,我会遇到一个错误。错误是“SyntaxError:JSON中位置38处的意外标记” 我已经确保服务器响应是UTF-8格式的。如果我使用裸JavaScript(也就是没有库或框架),JSON对象可以毫无问题地解析 app.js var App = angular.module('myApp', []); App.controller('myCt

我有一个使用Angular的应用程序。我正在加载一个JSON文件,用不同的语言在页面上显示数据。到目前为止,这适用于所有其他语言,但当变量值是孟加拉语时,我会遇到一个错误。错误是“SyntaxError:JSON中位置38处的意外标记”

我已经确保服务器响应是UTF-8格式的。如果我使用裸JavaScript(也就是没有库或框架),JSON对象可以毫无问题地解析

app.js

var App = angular.module('myApp', []);

App.controller('myCtrl', function($scope, $http) {
    $scope.setLang = function(language) {
        document.getElementById("rootElement").lang = language;

        $http.get('_customizable/languages/' + language + '.js', {header: {"Content-Type":"application/json; charset:utf-8"}})
           .then(function(res){
              $scope.translated = res.data;                
            }
        );
    }
    $scope.setLang(document.getElementById("rootElement").lang);
});
{
   "Applications":"অ্যাপ্লিকেশন",
   "AccountSettings": "অ্যাকাউন্ট সেটিংস",
   "AuthorizationManager": "অনুমোদন ম্যানেজার ",
   "DCCMaintenance": "ডিসিসি রক্ষণাবেক্ষণ",
   "MastercardClearing": "মাস্টারকার্ড ক্লিয়ারিং",
   "ParticipantManager": "অংশগ্রহণকারীর ম্যানেজার",
   "PropertiesManager": "বৈশিষ্ট্যাবলী ম্যানেজার",
   "VisaClearing": "ভিসা ক্লিয়ারিং",
   "WorkflowManager": "কর্মপ্রবাহ ম্যানেজার",
   "Users": "ব্যবহারকারী",
   "Groups": "দল",
   "RecordsSearch": "রেকর্ডস অনুসন্ধান",
   "UserName": "ব্যবহারকারীর নাম",
   "Search": "খোঁজো",
   "Reset": "রিসেট",
   "UserRecords": "ব্যবহারকারীর রেকর্ডস",
   "Delete": "মুছে ফেলুন",
   "AllRightsReserved": "সমস্ত অধিকার সংরক্ষিত."
}
bn.js

var App = angular.module('myApp', []);

App.controller('myCtrl', function($scope, $http) {
    $scope.setLang = function(language) {
        document.getElementById("rootElement").lang = language;

        $http.get('_customizable/languages/' + language + '.js', {header: {"Content-Type":"application/json; charset:utf-8"}})
           .then(function(res){
              $scope.translated = res.data;                
            }
        );
    }
    $scope.setLang(document.getElementById("rootElement").lang);
});
{
   "Applications":"অ্যাপ্লিকেশন",
   "AccountSettings": "অ্যাকাউন্ট সেটিংস",
   "AuthorizationManager": "অনুমোদন ম্যানেজার ",
   "DCCMaintenance": "ডিসিসি রক্ষণাবেক্ষণ",
   "MastercardClearing": "মাস্টারকার্ড ক্লিয়ারিং",
   "ParticipantManager": "অংশগ্রহণকারীর ম্যানেজার",
   "PropertiesManager": "বৈশিষ্ট্যাবলী ম্যানেজার",
   "VisaClearing": "ভিসা ক্লিয়ারিং",
   "WorkflowManager": "কর্মপ্রবাহ ম্যানেজার",
   "Users": "ব্যবহারকারী",
   "Groups": "দল",
   "RecordsSearch": "রেকর্ডস অনুসন্ধান",
   "UserName": "ব্যবহারকারীর নাম",
   "Search": "খোঁজো",
   "Reset": "রিসেট",
   "UserRecords": "ব্যবহারকারীর রেকর্ডস",
   "Delete": "মুছে ফেলুন",
   "AllRightsReserved": "সমস্ত অধিকার সংরক্ষিত."
}

注意:这甚至会在几个在线JSON编辑器上返回一个错误,例如

,因此……需要获取原始文件,而不是粘贴在此处的文件(协同工作的好处),但问题已被发现

第一个奇怪的线索是,将此处发布的版本复制到json验证站点是可行的

因此,当我将原始文件与在十六进制编辑器中发布的文件进行比较时,我们发现了差异。当文件的原始英文版本被放入Google Translate以转换为孟加拉语时,每行前面的3个前导空格从0x20 0x20 0x20更改为0xC2 0xA0 0xC2 0xA0 0x20


所以……故事的寓意是,不要翻译文件中的所有内容,只翻译需要翻译的较小部分。

因此……需要掌握原始文件,而不是粘贴在此处的文件(合作的好处),但问题已经发现

第一个奇怪的线索是,将此处发布的版本复制到json验证站点是可行的

因此,当我将原始文件与在十六进制编辑器中发布的文件进行比较时,我们发现了差异。当文件的原始英文版本被放入Google Translate以转换为孟加拉语时,每行前面的3个前导空格从0x20 0x20 0x20更改为0xC2 0xA0 0xC2 0xA0 0x20


所以……故事的寓意是,不要翻译文件中的所有内容,只翻译需要翻译的较小部分。

我将内容复制粘贴到您提供的JSON验证程序URL中,它对我有效。也许用十六进制编辑器打开JSON,检查是否没有发现任何可疑的东西。是否包含孟加拉国语言的规则集(+)也许这会有所帮助。另外,如何将JSON加载到应用程序中?使用
$http
?使用$http.get提供一些代码片段maybeYes。早上到办公室时,我会编辑这个问题以包含更多代码。当时我认为它与此无关。@jakub.g,请根据要求查看其他代码。我将它复制粘贴到您提供的JSON验证程序URL中,它对我有效。也许用十六进制编辑器打开JSON,检查是否没有发现任何可疑的东西。是否包含孟加拉国语言的规则集(+)也许这会有所帮助。另外,如何将JSON加载到应用程序中?使用
$http
?使用$http.get提供一些代码片段maybeYes。早上到办公室时,我会编辑这个问题以包含更多代码。当时我不认为这有什么关系。@jakub.g,请根据要求查看其他代码。