配置如下 module.exports = vuxLoader.merge(webpackConfig, { plugins: ['vux-ui', 'progress-bar', 'duplicate-style', { name: 'i18n', vuxStaticReplace: false, staticReplace: false, extractToFiles: './src/locales/components.yml', localeList: ['en', 'zh-CN'] }] }) 使用了vux-loader后,在chrome上debug,查看到的.vue文件,每条语句前的空格都没有了。但是js文件正常。 vux-loader的版本1.1.0。 例如,在chrome查看一个.vue文件: import XButton from 'vux/src/components/x-button/index.vue' import XHeader from 'vux/src/components/x-header/index.vue' export default { name: 'recoverpwd', components: { XButton, XHeader }, data () { return { msg: '' } }, methods: { fetchData: function () { let login = this.$route.params.login this.msg = this.$t('msgAskAdminResetPassWithArg', {login: login}) }, Login: function () { this.$router.push({ name: 'login' }) } }, created: function () { this.fetchData() } } 如果使用配置: module.exports = webpackConfig 则在chrome短查看.vue文件的语句前面空格是被保留的。
Activity
airyland commentedon Aug 16, 2017
目前会有这样的问题,原因是正则匹配需要,后面重写 parser 后会修复。
custcy commentedon Aug 16, 2017
@airyland
thanks, 这么快就给出了回复。这个问题其实不会太大,但是有一个跟这个相关的问题,影响特别大,会导致在vscode中通过chrome debugger调试时,.vue文件里的断点错位。
主要有两个原因,第一,vue-loader把template和i18n给去掉了,但是正确的做法应该是,内容去掉,但是保留同样数目的空行。否则断点错位。
第二,import { Group } from 'vux' 好像会翻译成两行,这样也会导致断点错位。不过这个问题,比较好避免,我使用多行写import语句就可以避免这个问题,例如: import { Group
} from 'vux'
airyland commentedon Aug 16, 2017
谢谢反馈,接下来版本会保留相同空行并且保证解析结果和原来行数一致。
custcy commentedon Aug 18, 2017
补充一个绕过第一点原因的方法:
把js从.vue文件中提取出来,放到一个单独的js文件中。
例如:
<script>Login.vue 文件
...
import loginimpl from './loginimpl.js'
export default loginimpl
</script>
...
loginimpl.js 文件
import {
XSwitch,
Alert,
Group,
XInput,
XButton,
XHeader } from 'vux'
...
export default {
name: 'login',
components: {
XSwitch,
Alert,
...
mirari commentedon Dec 12, 2017
使用airyland/vux2模板创建的项目,现在在devtool上完全无法定位到vue源码:

vux-loader版本是1.1.28。
除非将
eval-source-map改为cheap-module-eval-source-map此时虽然能看到源码,但是症状与主楼描述一样,没有空格,非常影响调试体验。
这个问题在vux文档上完全没有提及,是我在技术选型时遇到的重大障碍,希望能够尽快解决。
eyasliu commentedon Oct 16, 2018
vux-loader/src/libs/import-parser.js
Lines 94 to 112 in 780e3aa
请问为什么去掉了缩进,这样在调试的时候非常的不方便呢
eyasliu commentedon Oct 16, 2018
一年多过去了,请问有没有修复的计划