Skip to content

Latest commit

 

History

25 提交

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

仓库 files navigation

Property Resource Bundle Loader for Webpack

Loads .properties files into JavaScript as precompiled functions using dot-properties and messageformat.

Property values are parsed directly as ICU MessageFormat. With the default options, will assume that the filename has _ separated parts, of which the second is the two- or three-letter language code as in Java Resource Bundles.

Installation

npm install messageformat-properties-loader

Usage

For a working demo of the following, run npm install && npm run build in the example/ directory, and then open example/dist/index.html in a browser.

Webpack configuration

{
  test: /\.properties$/,
  loader: 'messageformat-properties-loader',
  options: {
    biDiSupport: false,  // enables bi-directional text support
    defaultLocale: 'en', // used if resolution from filename fails
    encoding: 'auto',    // .properties file encoding, use one of
                         // 'auto', 'latin1', or 'utf8'
    keyPath: false,      // if true, dots '.' key names will result
                         // in multi-level objects -- use a string
                         // value to customize
    pathSep: '_'         // separator for parsing locale from filename
  }
}

Default option values are shown above, though none are required.

messages_en.properties

errors.confirmation: {src} doesn't match {attribute}
errors.accepted: {src} must be accepted
errors.wrong_length: {src} is the wrong length (should be {count, plural, one{1 character} other{# characters}})
errors.equal_to: {src} must be equal to {count}

example.js

import messages from './messages_en.properties'

messages.errors.accepted({ src: 'Terms' })
// 'Terms must be accepted'

messages.errors.wrong_length({ src: 'Foo', count: 42 })
// 'Foo is the wrong length (should be 42 characters)'

关于

Locale Property Resource Bundle Loader for Webpack

Topics

Resources

Stars

4 stars

关注者

1 watching

复刻s

发布

Used by

贡献者

Languages