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

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

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