$ weex run android
$ weex run ios
因在configs/config.js
中配置了代理:
proxyTable: {
'/api': {
target: 'https://www.wanandroid.com', // 接口域名
secure: true, // 如果是https接口,需要配置这个参数
changeOrigin: true, // 如果接口跨域,需要配置
pathRewrite: {
'^/api': ''
}
}
}
如果要运行web环境,需要修改src/common/api.js
中HOST
为api
$ npm start
创建项目的时候,需要仔细看提示,选择最新的版本,不让会遇到很多问题
- 安装依赖
npm i node-sass sass-loader --save
- 配置loader
在configs/vue-loader.conf.js中配置
...
module.exports = (options) => {
return {
...
cssSourceMap: sourceMapEnabled,
cacheBusting: config.dev.cacheBusting,
// 这里添加sass配置
lang: {
sass: ['sass-loader']
}
}
}
在index.vue
中<router-view/>
一定要在外面写<div>
将其包裹,不然使用this.$router.push
在android
ios
上会不生效,在web
没有问题。
使用router的back
或go
,在Android
上不会生效;
替代方案移动端使用navigator
方式,具体查看src/mixins/index.js
,该方案需要生成多页面具体步骤如下:
- 创建对应的
entry.js
- 在
configs/webpack.common.conf.js
的weexEntry
中新增对应页面的配置
经测试,上述方案在Android
上会和router.back
同样的效果,具体原因不明。
官方文档并没有详细说明,不过如果是线上项目,可以将生成的js文件放到服务器,跳转使用navigator
请求具体的文件即可。
查看 src/config/IconConfig.js
drawable-hdpi
drawable-mdpi
drawable-xhdpi
drawable-xxhdpi
中都要放图片,否则local:///ic_logo
方式无法加载出图片
在Android中不支持嵌套样式,还有其他一些样式属性不兼容,具体查看官方文档