相关疑难解决方法(0)

使用管道格式化日期为dd/MM/yyyy

我正在使用date管道格式化我的日期,但我无法获得我想要的确切格式而无需解决方法.我是错误地理解管道还是不可能?

//our root app component
import {Component} from 'angular2/core'

@Component({
  selector: 'my-app',
  providers: [],
  template: `
    <div>
      <h2>Hello {{name}}</h2>
      <h3>{{date | date: 'ddMMyyyy'}}, should be 
      {{date | date: 'dd'}}/{{date | date:'MM'}}/{{date | date: 'yyyy'}}</h3>

    </div>
  `,
  directives: []
})
export class App {
  constructor() {
    this.name = 'Angular2'
    this.date = new Date();
  }
}
Run Code Online (Sandbox Code Playgroud)

plnkr视图

date angular-pipe date-pipe angular

224
推荐指数
12
解决办法
46万
查看次数

如何将从后端渲染的参数传递给angular2 bootstrap方法

有没有办法将后端呈现的参数传递给angular2 bootstrap方法?我想为使用BaseRequestOptions的所有请求设置http标头,并使用后端提供的值.我的main.ts文件看起来像这样:

import { bootstrap } from '@angular/platform-browser-dynamic';
import { AppComponent } from "./app.component.ts";

bootstrap(AppComponent);
Run Code Online (Sandbox Code Playgroud)

我发现如何将这个参数传递给root组件(/sf/answers/2488755531/),但是当我开火bootstrap方法时我需要它......有什么想法吗?

编辑:

webpack.config.js内容:

module.exports = {
  entry: {
    app: "./Scripts/app/main.ts"
  },

  output: {
    filename: "./Scripts/build/[name].js"
  },

  resolve: {
    extensions: ["", ".ts", ".js"]
  },

  module: {
    loaders: [
      {
        test: /\.ts$/,
        loader: 'ts-loader'
      }
    ]
  }
};
Run Code Online (Sandbox Code Playgroud)

javascript angular

71
推荐指数
3
解决办法
4万
查看次数

什么是Angular 2不透明令牌和什么是重点?

我遇到了'不透明的标记'作为在Angular 2中实现全局常量的解决方案,例如:在Angular 2中定义全局常量

尽管阅读了文档,我似乎无法理解这一点.

使用OpaqueToken比使用字符串作为标记更可取,因为多个提供程序使用与两个不同标记相同的字符串可能导致冲突.

什么?什么是开始的Angular2令牌?所有我得到的谷歌都是JSON网络代币(他们在auth等中的角色等)的答案,据我所知,但显然没有任何关联.

什么是不透明的令牌?它是干什么用的?

PS更多关于不透明标记的文档用于提供常量.然而,他们并没有帮助我.

angular2-opaquetoken angular

35
推荐指数
2
解决办法
2万
查看次数

如何在Angular中向右显示货币符号

我必须像这样显示欧元货币:583 €.

但是这个代码:

{{ price | currency:'EUR':true }}
Run Code Online (Sandbox Code Playgroud)

我知道€583,Angular核心中是否有任何选项可以将符号移动到右边?许多欧洲国家使用右边的符号(法国,德国,西班牙,意大利).

currency pipe euro angular

19
推荐指数
5
解决办法
4万
查看次数

Angular 4 datepicker语言环境无法正常工作

我正在为日期选择器使用ng-pick-datetime UI组件.我禁用了readonly模式,因此输入处于活动状态以便使用键盘输入.

<owl-date-time name="client_birthday" #client_birthday="ngModel"
    [placeHolder]="'DD.MM.YYYY'"
    [locale]="ru"
    [(ngModel)]="client.client_birthday"
    [type]="'calendar'"
    [dataType]="'string'"
    [dateFormat]="'DD.MM.YYYY'"
    [readonlyInput] ="false"
    [autoClose] ="true"
    [inputId]="'client_birthday'"                                                   
></owl-date-time>
Run Code Online (Sandbox Code Playgroud)

我尝试RU使用date-fns以下方法应用语言环境:

ru: any;
ruLocale = require('date-fns/locale/ru');
ngOnInit() {     
    this.ru = {
        firstDayOfWeek: 1,
        dayNames: [...],
        dayNamesShort: [...],
        monthNames: [...],
        monthNamesShort: [...],
        dateFns: this.ruLocale
    };
}
Run Code Online (Sandbox Code Playgroud)

当我用dd.mm.yyyy格式输入输入时,选择器将日期作为一个月和一个月作为一天,并且年份是可以的.因此,它识别的唯一格式是mm.dd.yyyy,这似乎是us区域设置.我的日历语言按预期更改了,但是也可以配置日期格式RU吗?

我将不胜感激任何帮助.

javascript jquery datepicker angular

11
推荐指数
2
解决办法
1553
查看次数

Angular4:用户的区域设置

我希望有一个LoginForm,并在此用户输入应用程序后 - 使用德语或英语.据我所知,我可以设置app.module.ts类似的东西

import { LOCALE_ID } from '@angular/core';
providers: [{ provide: LOCALE_ID, useValue: 'de-DE' },...]
Run Code Online (Sandbox Code Playgroud)

但那是在启动时,而不是在LoginForm已经显示的时候: - /有没有办法改变整个应用程序的语言环境?(不仅仅是针对特定组件!) - 如果翻译可以随时更改,那将会很棒.任何提示如何实现?我只找到了上面的处理方式.

internationalization angular

8
推荐指数
2
解决办法
9587
查看次数

Angular中的语言环境5

我是locales概念的新手.根据我的理解,我制作了一个Angular 4应用程序,它将使用navigator.language()API 从浏览器中读取区域设置并提供给Angular的管道.由于所有这些都随v5发生变化,我对迁移有一些疑问.

我的理解是这里的列表:https://github.com/angular/angular/tree/master/packages/common/locales提供了可以提供的语言环境列表registerLocaleData().

因此,我可以import localeEnIn from '@angular/common/locales/en-IN'registerLocaleData(localeEnIn)激活语言环境.

自动加载在浏览器的语言环境的应用程序,我将不得不使用navigator.language()API来获取区域设置ID(比如"EN-GB"),并调用registerLocaleData(localeEnGb)其中localeEnGb从上面的列表导入.如果不必指定所有语言环境,这可以自动化吗?

有像en和的区域设置de.我应该拆分响应navigator.language()并仅提供"en"吗?

localization angular

8
推荐指数
1
解决办法
2467
查看次数

在运行时更改Angular中的区域设置?

我正在做一些关于在运行时更改Angular语言环境的研究,并找到了这个主题:如何在Angular 2中的DatePipe中设置语言环境?.
是否仍然无法在运行时更改语言环境?我有一个应用程序,它具有多个管道来根据语言环境格式化数字,日期和语言,但是为每个语言环境实现许多自定义管道 - 而不是在运行时能够更改它 - 似乎很荒谬.
你会用什么解决方案?

javascript locale internationalization angular

5
推荐指数
1
解决办法
2934
查看次数

根据浏览器语言设置角度LOCALE_ID

我正在尝试在我的多语言应用程序中使用 Kendo 组件。为了正确设置日期格式,Kendo 需要LOCALE_ID设置 Angular 的 。我不知道如何以干净的方式实现这一点。

目前,我正在使用 来HTTP_ACCEPT_LANGUAGE查找应该使用哪种语言来提供我的应用程序。我在nginx.conf中这样做:

# Parse AcceptLanguage header
  # en,es,pl,fr
  # en,es;q=0.8,pl;q=0.7,fr;q=0.6
  set $first_language $http_accept_language;
  if ($http_accept_language ~* '^(.+?),') {
    set $first_language $1;
  }

  set $language_suffix 'en';
  if ($first_language ~* 'fr') {
    set $language_suffix 'fr';
  }

  root /usr/share/nginx/html/$language_suffix;
Run Code Online (Sandbox Code Playgroud)

这有效。使用正确的 .xlf 文件并且消息显示为已翻译。

现在,我需要设置LOCALE_ID以使我的 Kendo 组件以正确的格式呈现日期。我尝试通过获取浏览器当前语言来设置它。以下是我尝试实现这一目标的方法:

应用程序模块.ts

...
import { LOCALE_ID, NgModule } from '@angular/core';
import { LocaleService } from './shared/service/locale.service';
...

@NgModule({
  declarations: [
    ...
  ],
  imports: [ …
Run Code Online (Sandbox Code Playgroud)

localization kendo-ui kendo-ui-angular2 angular

5
推荐指数
1
解决办法
1万
查看次数

Angular 2货币数字格式

我正在尝试将从API获取的数量格式化为特定于语言环境的格式.

在控制台中:

Intl.NumberFormat('en-IN').format(450000) // "4,50,000"
Run Code Online (Sandbox Code Playgroud)

在Angular 2组件模板中:

{{ Intl.NumberFormat('en-IN').format(450000) }} // Cannot read property 'NumberFormat' of undefined

{{ 450000 | currency:'INR':true }} // ?450,000.00
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以在?4,50,000.00不明确指定分隔符的情况下获得(并且能够将语言环境字符串'en-IN'更改'en-US'为更新).

javascript typescript angular

0
推荐指数
1
解决办法
7509
查看次数