提交 4908babc 编写于 作者: fxy060608's avatar fxy060608

Merge branch 'dev' of https://github.com/dcloudio/uni-app into dev

......@@ -446,17 +446,22 @@ class Util {
}, 0);
}
_sendReportRequest(options) {
this._navigationBarTitle.lt = '1';
let query = options.query && JSON.stringify(options.query) !== '{}' ? '?' + JSON.stringify(options.query) : '';
this.statData.lt = '1';
this.statData.url = options.path + query;
this.statData.url = (options.path + query) || '';
this.statData.t = getTime();
this.statData.sc = getScene(options.scene);
this.statData.fvts = getFirstVisitTime();
this.statData.lvts = getLastVisitTime();
this.statData.tvc = getTotalVisitCount();
if (getPlatformName() === 'n') {
this.getProperty();
} else {
this.getNetworkInfo();
}
}
_sendPageRequest(opt) {
let {
......@@ -479,6 +484,13 @@ class Util {
t: getTime(),
p: this.statData.p
};
if (getPlatformName() === 'n' && this.statData.p === 'a') {
setTimeout(() => {
this.request(options);
}, 200);
return
}
this.request(options);
}
......@@ -499,6 +511,12 @@ class Util {
t: getTime(),
p: this.statData.p
};
if (getPlatformName() === 'n' && this.statData.p === 'a') {
setTimeout(() => {
this.request(options, type);
}, 200);
return
}
this.request(options, type);
}
_sendEventRequest({
......@@ -531,6 +549,13 @@ class Util {
});
}
getProperty() {
plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => {
this.statData.v = wgtinfo.version || '';
this.getNetworkInfo();
});
}
getLocation() {
if (statConfig.getLocation) {
uni.getLocation({
......@@ -618,10 +643,12 @@ class Util {
return
}
setTimeout(() => {
uni.request({
url: STAT_URL,
method: 'POST',
// header: {
// 'content-type': 'application/json' // 默认值
// },
data: optionsData,
success: () => {
if (process.env.NODE_ENV === 'development') {
......@@ -639,7 +666,6 @@ class Util {
}
}
});
}, 200);
}
/**
......
{
"name": "@dcloudio/uni-stat",
"version": "0.0.111",
"version": "0.0.113",
"description": "",
"main": "dist/index.js",
"scripts": {
......
......@@ -181,17 +181,22 @@ class Util {
}, 0)
}
_sendReportRequest(options) {
this._navigationBarTitle.lt = '1';
let query = options.query && JSON.stringify(options.query) !== '{}' ? '?' + JSON.stringify(options.query) : '';
this.statData.lt = '1';
this.statData.url = options.path + query;
this.statData.url = (options.path + query) || '';
this.statData.t = getTime();
this.statData.sc = getScene(options.scene);
this.statData.fvts = getFirstVisitTime();
this.statData.lvts = getLastVisitTime();
this.statData.tvc = getTotalVisitCount();
if (getPlatformName() === 'n') {
this.getProperty();
} else {
this.getNetworkInfo();
}
}
_sendPageRequest(opt) {
let {
......@@ -214,6 +219,13 @@ class Util {
t: getTime(),
p: this.statData.p
}
if (getPlatformName() === 'n' && this.statData.p === 'a') {
setTimeout(() => {
this.request(options);
}, 200)
return
}
this.request(options);
}
......@@ -234,6 +246,12 @@ class Util {
t: getTime(),
p: this.statData.p
}
if (getPlatformName() === 'n' && this.statData.p === 'a') {
setTimeout(() => {
this.request(options, type)
}, 200)
return
}
this.request(options, type)
}
_sendEventRequest({
......@@ -266,6 +284,13 @@ class Util {
});
}
getProperty() {
plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => {
this.statData.v = wgtinfo.version || '';
this.getNetworkInfo();
});
}
getLocation() {
if (statConfig.getLocation) {
uni.getLocation({
......@@ -353,10 +378,12 @@ class Util {
return
}
setTimeout(() => {
uni.request({
url: STAT_URL,
method: 'POST',
// header: {
// 'content-type': 'application/json' // 默认值
// },
data: optionsData,
success: () => {
if (process.env.NODE_ENV === 'development') {
......@@ -374,7 +401,6 @@ class Util {
}
}
});
}, 200)
}
/**
......
......@@ -19,9 +19,12 @@ describe('mp:compiler-extra', () => {
assertCodegen(
/* eslint-disable no-template-curly-in-string */
`<view @touchmove="a.touchmove">{{t.a}}{{t['a']}}{{t.a(b)}}{{t['a'](b)}}{{u.t.a(b)}}{{u.t.a}}</view>`,
`<view bindtouchmove="{{a.touchmove}}">{{t.a+t[\'a\']+t.a(b)+t[\'a\'](b)+$root.g0+u.t.a}}</view>`,
`<view bindtouchmove="{{a.touchmove}}">{{t.a+t['a']+t.a(b)+t['a'](b)+$root.g0+u.t.a}}</view>`,
'with(this){var g0=u.t.a(b);$mp.data=Object.assign({},{$root:{g0:g0}})}', {
filterModules: ['t', 'a']
filterModules: {
t: {},
a: {}
}
}
)
})
......
......@@ -10,7 +10,10 @@ const res = compiler.compile(
isTest: true,
platform: 'mp-weixin'
},
filterModules: ['t', 'a']
filterModules: {
t: {},
a: {}
}
})
// ---BEGIN:JSON---{"n":"v"}---END:JSON---
console.log(res)
......@@ -40,7 +40,7 @@ module.exports = {
options.mp.globalUsingComponents = options.globalUsingComponents || Object.create(null)
options.mp.filterModules = options.filterModules || []
options.mp.filterModules = Object.keys(options.filterModules || {})
// (可用的原生微信小程序组件,global+scoped)
options.mp.wxComponents = options.wxComponents || Object.create(null)
......@@ -98,6 +98,16 @@ at ${resourcePath}.vue:1`)
if (options.updateSpecialMethods) {
options.updateSpecialMethods(resourcePath, [...res.specialMethods])
}
const filterTemplate = []
options.mp.filterModules.forEach(name => {
const filterTag = options.filterTagName
const filterModule = options.filterModules[name]
if (filterModule.content) {
filterTemplate.push(`<${filterTag} module="${name}">
${filterModule.content}
</${filterTag}>`)
}
})
if (
process.UNI_ENTRY[resourcePath] &&
......
......@@ -44,16 +44,16 @@ module.exports = function(source) {
return source
}
const modules = new Set()
const modules = Object.create(null)
descriptor.customBlocks.filter(block => {
if (block.type === FILTER_TAG && block.attrs.module) {
modules.add(block.attrs.module)
modules[block.attrs.module] = block
}
})
if (modules.size) {
descriptor.template.attrs['filter-modules'] = [...modules]
if (Object.keys(modules)) {
descriptor.template.attrs['filter-modules'] = JSON.stringify(modules)
}
// delete customBlocks
descriptor.customBlocks.length = 0
......
......@@ -18,11 +18,16 @@ const {
updateUsingGlobalComponents
} = require('@dcloudio/uni-cli-shared/lib/cache')
const {
getPlatformFilterTag
} = require('@dcloudio/uni-cli-shared/lib/platform')
const {
normalizeNodeModules
} = require('./shared')
const templateExt = getPlatformExts().template
const filterTagName = getPlatformFilterTag() || ''
module.exports = function (content) {
this.cacheable && this.cacheable()
......@@ -35,14 +40,14 @@ module.exports = function (content) {
const wxComponents = getWXComponents(resourcePath.replace(path.extname(resourcePath), ''))
const params = loaderUtils.parseQuery(this.resourceQuery)
const filterModules = (params && params['filter-modules'] || '').split(',')
/* eslint-disable no-mixed-operators */
const filterModules = JSON.parse(params && params['filter-modules'] || '{}')
Object.assign(vueLoaderOptions.options.compilerOptions, {
mp: {
platform: process.env.UNI_PLATFORM
},
filterModules,
filterTagName,
resourcePath,
emitFile: this.emitFile,
wxComponents,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册