
Product
Announcing Socket Fix 2.0
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
miniprogram-xml-loader
Advanced tools
wxml loader for webpack
Please note this wxml is a markup language for Wechat mini programs
yarn add -D wxml-loader
You may also need to use file-loader to extract files.
{
test: /\.wxml$/,
include: /src/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]',
useRelativePath: true,
context: resolve('src'),
},
},
{
loader: 'wxml-loader',
options: {
root: resolve('src'),
enforceRelativePath: true,
},
},
],
}
root
(String): Root path for requiring sourcesenforceRelativePath
(Boolean): Should be true if you wish to generate a
root
relative URL for each file. It is recommend to set to true
publicPath
(String): Defaults to webpack
output.publicPathtransformContent(content, resource)
(Function): Transform content, should
return a content stringtransformUrl(url, resource)
(Function): Transform url, should return a urlminimize
(Boolean): To minimize. Defaults to false
Currently wxml-loader
could not resolve dynamic path, i.e.
<image src="./images/{{icon}}.png" />
. Please use copy-webapck-plugin
to
copy those resource to dist directory manually. See
https://github.com/Cap32/wxml-loader/issues/1 for detail (Chinese).
This loader is also compatible with
Alipay mini programs. You
just need to make sure using test: /\.axml$/
instead of test: /\.wxml$/
in
webpack config.
If you're using
wxapp-webpack-plugin and
setting Targets.Alipay
as webpack target, it will automatically set
transformContent()
and transformUrl()
option by default, the
transformContent()
function will transform wx:attr
attribute to a:attr
,
and the transformUrl()
function will transform .wxml
extension to .axml
automatically. That means you could write mini programs once, and build both
Wechat and Alipay mini programs.
webpack.config.babel.js
import WXAppWebpackPlugin, { Targets } from "wxapp-webpack-plugin";
export default env => ({
// ...other
target: Targets[env.target || "Wechat"],
module: {
rules: [
// ...other,
{
test: /\.wxml$/,
use: [
{
loader: "file-loader",
options: {
name: `[name].${env.target === "Alipay" ? "axml" : "wxml"}`
useRelativePath: true,
context: resolve('src'),
},
},
{
loader: 'wxml-loader',
options: {
root: resolve('src'),
enforceRelativePath: true,
},
},
]
}
]
},
plugin: [
// ...other
new WXAppWebpackPlugin()
]
});
For a complete guild to use webpack
to develop WeiXin App
, please checkout
my wxapp-boilerplate repo.
MIT
FAQs
wxml loader for webpack
We found that miniprogram-xml-loader demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.