小编Mar*_*ton的帖子

Javascript无效或意外的令牌(\ u0)

Javascript错误

正如您将在图像中看到的那样,有许多红点显然都标识为\ u0

文件内容或编辑器没有区别.

正在编译或未编译的JS文件没有区别,事实上,由于空格和新行,更多的红点出现在非缩小版本中,甚至加载空白文件,然后添加像console.log('abc')这样简单的东西将仅产生所有红点;

添加内容

这些不可见和不可选择的字符在文件末尾显示的次数与我在脚本的任何其他部分中键入的任何其他字符的数量相同.

不可见字符不在磁盘上的实际文件本身中,仅在Web服务器提供的字符中.

删除内容

如果我启动VM然后从JS脚本中的任何位置删除字符,那么相同数量的字符将从文件的webresponse请求中的内容的END消失.

未经修改的使用

当我第一次启动VM并在浏览器中访问网站时,只要文件永远不会以任何方式被修改,就不会有多个请求出错.

结论

如果我在VM运行时以任何方式修改文件,结果就好像服务器以某种方式保存了服务器首次启动或首次提供内容时文件字节大小的快照.然后在服务器运行时对文件内容进行更改时,如果内容变小则切断内容,或者如果更大,则填充\ u0,就像填充文件一样.

可以清除它不是永久性的错误

如果我在使文件损坏后重新启动VM并使用先前导致错误的修改刷新js文件的请求,则错误消失并且我的新更改很好.

我还可以撤消损坏响应的最后更改,并继续正常操作.

这个问题才刚刚开始发生,因为自11月18日开始或者需要花费几天的时间而且我已经运行了一个多月没有问题的设置,我记得最近唯一改变的是上周一些Windows更新

我在Windows 10上运行Virtualbox VM Centos 7,Apache 2.4.6 + PHP 7.1.12,并使用VBox Guest Additions共享文件夹配置将源代码目录安装到VM.

看起来这个问题与VM有关,它与资产有关,如果文件在加载后发生了变化,则会出现某种形式的填充和剔除.

重新启动httpd服务没有任何影响,只有在每次文件修改后重新启动VM才能解决问题.

有没有其他人遇到这个问题或能够重现它?

VM设置(复制)

以下是我一直在构建的说明,因为如果您想尝试重现问题,我将学习如何创建和运行本地开发环境:

https://docs.google.com/document/d/11cBF75hfcehB3np4nlLhc1EqIOKVchKIuQJyrvn8ztk

更新1 - 26/11/17

我试过从头开始重建一个新的VM,仍然是同样的问题.

我注意到它也发生在CSS文件中,作为测试,我更改了以下代码:

.flexData.tools .settings:hover {
    color: #0a0a0a;
}

/*# sourceMappingURL=flexData.css.map */
Run Code Online (Sandbox Code Playgroud)

添加一个名为test的类:

.flexData.tools .settings:hover {
    color: #0a0a0a;
}
.test {
    color:blue;
}

/*# sourceMappingURL=flexData.css.map */
Run Code Online (Sandbox Code Playgroud)

结果在服务器服务的文件末尾看起来像这样:

.flexData.tools .settings:hover {
    color: #0a0a0a; 
}

/*# sourceMappingURL=flexData.css.map */
?????????????????????????
Run Code Online (Sandbox Code Playgroud)

注意在评论之前测试类是如何丢失的,并且在评论之后出现了奇怪的字符. …

javascript apache virtualbox centos7

9
推荐指数
1
解决办法
2165
查看次数

JQuery - 将表单数据序列化为Associated Array

如何将HTML表单数据序列化为关联数组,而不是使用jQuery使用$ .serializeArray()生成的数字索引格式?

jQuery.serializeArray给出的输出使得使用数字索引键直接选择值很困难.当在表单输入中使用复选框时,可能会发生轻微的索引转换.

serializeArray的输出

[
  0: [name: 'field-1', value: 'val1'],
  1: [name: 'check', value: 'val2'],
  2: [name: 'check', value: 'val3']
]
Run Code Online (Sandbox Code Playgroud)

期望的输出 - 更可靠的格式和更简单的价值访问

[
  'field-1' : 'val1',
  'check' : [ 0 : 'val2', 1 : 'val3' ]
]
Run Code Online (Sandbox Code Playgroud)

javascript arrays jquery associative-array

8
推荐指数
1
解决办法
8181
查看次数

如何调试 nuxt 实例不可用?

我正在开发 nuxt 3 项目。

\n

我已经创建了一个可组合的 useAvailabilityRoom.ts 但突然,它停止工作并抛出此错误:

\n
    Error: nuxt instance unavailable  10:42:04\n        at Module.useNuxtApp (/Users/chilperic/Sites/cabinetpartage/node_modules/nuxt/dist/app/nuxt.mjs:165:13)\n        at Module.useAsyncData (/Users/chilperic/Sites/cabinetpartage/node_modules/nuxt/dist/app/composables/asyncData.mjs:24:38)\n        at Module.useFetch (/Users/chilperic/Sites/cabinetpartage/node_modules/nuxt/dist/app/composables/fetch.mjs:52:43)\n        at Module.__vite_ssr_exports__.default (/Users/chilperic/Sites/cabinetpartage/composables/useUsers.ts:6:55)\n        at Module.__vite_ssr_exports__.default (/Users/chilperic/Sites/cabinetpartage/composables/useRoomAvailability.ts:61:55)\n        at processTicksAndRejections (node:internal/process/task_queues:96:5)\n        at async setup (/Users/chilperic/Sites/cabinetpartage/pages/salles/[idLocation]/[idRoom].vue:59:12)\n
Run Code Online (Sandbox Code Playgroud)\n

我在页面组件中的调用

\n
    try {\n        const roomAvailability = await useRoomAvailability(route.params.idRoom);\n    } catch (e) {\n        console.log(e);\n    }\n
Run Code Online (Sandbox Code Playgroud)\n

我的可组合代码

\n
    class RoomSchedule {\n       roomId: String = "";\n        days = [\n            "monday",\n            "tuesday",\n            "wednesday",\n            "thursday",\n            "friday",\n            "saturday",\n            "sunday",\n        ];\n        monday = [];\n        tuesday = [];\n        wednesday …
Run Code Online (Sandbox Code Playgroud)

nuxtjs3

6
推荐指数
0
解决办法
1464
查看次数

vue.js 将组件挂载到应用程序根目录

我有一个 modal.vue 组件,如下所示:

<template>

    <transition name="modal-transition">
        <div class="modal-body" v-if="displayed">
            <div class="modal-overlay" @click="displayed = false"></div>
            <div class="modal-content">
                <slot/>
            </div>
        </div>
    </transition>

</template>
Run Code Online (Sandbox Code Playgroud)

如何将此组件安装到应用程序根元素而不是就位?

对于粗略的不准确的例子:

<body>
  <div id="app">
    <div class="header"></div>
    <div class="nav"></div>
    <div class="stage">
       <div class="sub-nav"></div>
       <div class="content">
          <modal :display.sync="display">MY MODAL</modal> <-- Don't mount here...
       </div>
    </div>
    <-- Mount here instead...
  </div>
</body>
Run Code Online (Sandbox Code Playgroud)

当前的问题是我的网站标题和导航分层在我的模式之上,并且它是变暗的全屏覆盖层,而不是分层在模式覆盖层后面。

标题和导航位于顶部

vue.js vuejs2

4
推荐指数
1
解决办法
8007
查看次数