Weex Loader
A webpack loader for Weex.
Install
npm install weex-loader babel-loader --save
Features
- Can load
.we
file. - Can load parted files(
.js/.css/.html
) via src
attribute. - Can specify a custom language to chain any loader.
- Can specify name when require
.we
file. - Can write es2015 in script.
Upgrade to v0.3
- Use a different way to load parted files. The old way is deprecated.
- If you dependent
weex-components
under v0.1, please update it to v0.2. - Just enjoy the new features!
- Use some hack way to require
@weex-model/xxxx
in .js
file. see issue
Usage
How to load a .we
file.
make a webpack config
module.exports = {
entry: './main.we?entry',
output: {
path: './dist',
filename: 'main.js'
},
module: {
loaders: [
{
test: /\.we(\?[^?]+)?$/,
loader: 'weex'
}
]
}
};
How to write parted files
specify src
attribute
<template src="./main.html"></template>
<style src="./main.css"></style>
<script src="./main.js"></script>
add some custom language for loaders
append a weex config in webpack config
weex: {
lang: {
jade: ['jade-html']
}
}
main.we
<template lang="jade">
div
text Hello Weex
</template>
How to require .we
file as component element
- first, require a
path/to/component.we
in script
like require('./foo.we')
or write inline element like <element name="foo" src="./foo.we"></element>
. - second, use it in
template
like <foo></foo>
.
<element name="foo" src="./foo.we"></element>
<template>
<div>
<foo></foo>
<bar></bar>
</div>
</template>
<script>
require('./bar.we')
</script>
How to specify the name of a component
- By default, the name is the basename without extname of component path.
- Give a name query in require request, like
require('./foo.we?name="fooo"')
. Or specify a name attribute in element, like <element name="fooo" src="./foo.we" ></element>
- use the name in
template
like <fooo></fooo>
.
<element name="fooo" src="./foo.we"></element>
<template>
<div>
<fooo></fooo>
<baar></baar>
</div>
</template>
<script>
require('./bar.we?name=baar')
</script>
Test
npm run test
will run mocha testing.
And you can check the specs in test/spec
folder.
Specs
Knew Issues