SegmentFault 最新的问题
2024-03-19T19:11:30+08:00
https://segmentfault.com/feeds/questions
https://creativecommons.org/licenses/by-nc-nd/4.0/
如何让 qmarkdown 渲染出 markdown 效果?
https://segmentfault.com/q/1010000044728320
2024-03-19T19:11:30+08:00
2024-03-19T19:11:30+08:00
ponponon
https://segmentfault.com/u/ponponon
0
<p>如何让 qmarkdown 渲染出 markdown 效果</p><p>我参考 <a href="https://link.segmentfault.com/?enc=TXrxIjlDHuPFkq1R2fAtmA%3D%3D.KjX3F3GsfRNvTE9B%2BgMCaRwmA2yC2%2F2SpGCFeGTSKY%2FO%2FYbows%2BnfnNLJSQ9ByiHnuqspSFGGiEXFq30BJUF%2Be2oEcs8an1%2Fw4ZdMX4%2F0v8%3D" rel="nofollow">https://qmarkdown.netlify.app/all-about-qmarkdown/installatio...</a> 安装了 qmarkdown</p><p>又参考了 <a href="https://link.segmentfault.com/?enc=m0xRM63GdM%2B%2B4GW4%2FIpgNQ%3D%3D.4wPt6nYbsp%2BU4Ib5eMU5sN1m%2B46%2BjrV4P22Cwm%2F9bMPhOHfH9KXWiLcZksJplQYfs1SNTZaVcqz2SluW9f201A%3D%3D" rel="nofollow">https://qmarkdown.netlify.app/developing/using-qmarkdown</a> 使用 qmarkdown</p><p>但是渲染不出 markdown 的效果,不知道是差哪个步骤了</p><p><code>main.js</code></p><pre><code class="js">import { createApp } from "vue";
import App from "./App.vue";
import router from "./router";
import Antd from "ant-design-vue";
import "ant-design-vue/dist/antd.css";
import JsonViewer from "vue-json-viewer";
import TopBar from "@/components/common/TopBar.vue";
import Plugin from "@quasar/quasar-ui-qmarkdown/src/QMarkdown.js";
import "@quasar/quasar-ui-qmarkdown/src/QMarkdown.sass";
const app = createApp(App).use(router).use(Antd).use(JsonViewer).use(Plugin);
app.component("top-bar", TopBar);
app.mount("#app");
</code></pre><p><code>Demo.vue</code></p><pre><code class="vue"><template>
<div class="q-pa-md q-gutter-sm">
<!-- eslint-disable vue/html-indent -->
<q-markdown :plugins="plugins">
### Solar System Exploration, 1950s – 1960s
- [ ] Mercury
- [x] Venus
- [x] Earth (Orbit/Moon)
- [x] Mars
- [ ] Jupiter
- [ ] Saturn
- [ ] Uranus
- [ ] Neptune
- [ ] Comet Haley
</q-markdown>
<!-- eslint-enable vue/html-indent -->
</div>
</template></code></pre><p><img width="723" height="203" src="/img/bVdbP2F" alt="图片.png" title="图片.png"></p><p>或者说这类问题如何排查呢?</p>
不明白mybatis源码中queryStack变量的作用是什么?
https://segmentfault.com/q/1010000044728299
2024-03-19T18:57:26+08:00
2024-03-19T18:57:26+08:00
开天门
https://segmentfault.com/u/kaitianmen
0
<p>在阅读mybatis源码时,发现问题:</p><p>源码<strong>org.apache.ibatis.executor.BaseExecutor#query</strong>,如下:</p><pre><code>protected int queryStack;
public <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler,
CacheKey key, BoundSql boundSql) throws SQLException {
ErrorContext.instance().resource(ms.getResource()).activity("executing a query").object(ms.getId());
if (closed) {
throw new ExecutorException("Executor was closed.");
}
if (queryStack == 0 && ms.isFlushCacheRequired()) {
clearLocalCache();
}
List<E> list;
try {
queryStack++;
list = resultHandler == null ? (List<E>) localCache.getObject(key) : null;
if (list != null) {
//处理Callable类型,还需要绑定IN/OUT参数
handleLocallyCachedOutputParameters(ms, key, parameter, boundSql);
} else {
//本地缓存没有结果,直接查询数据库
list = queryFromDatabase(ms, parameter, rowBounds, resultHandler, key, boundSql);
}
} finally {
queryStack--;
}
if (queryStack == 0) {
// ... codeA ...
}
return list;
}
</code></pre><p>我无法明白这个queryStack变量的意义。<br>通过控制流程来看:</p><ol><li>假如这段代码允许多线程并发,那么int变量一定会出现线程安全问题。</li><li>假如这段代码仅允许单线程跑,那么只可能是因为存在递归的情况,才需要引用int来记录stack,但是我跟代码半天,也没有发现哪里会递归。</li></ol><p>有没有大佬讲讲啥时候这个方法会递归调用?或者是其他作用。</p>
vitest测试报错?
https://segmentfault.com/q/1010000044728105
2024-03-19T18:10:16+08:00
2024-03-19T18:10:16+08:00
peterhuan
https://segmentfault.com/u/huanxianzhu
0
<p>vitest测试报错?</p><p>按照这篇<a href="https://link.segmentfault.com/?enc=mBVOx2L9oBlRCLk%2BBR1lnw%3D%3D.NuaG%2Fj0WeWTIpwyqIdV8tAkoQHQ9XIfZVjyAhSTV48E1ExfL9IQW%2BjGaMYl%2Fu2qh8mE86f3DmEAAhz3%2FiYs9StOqe4NeIzXz711r%2B8o8IQjOakvYALqyWSkMmzSKl3FvzntQgmeN5gHKK7EeEraxUA%3D%3D" rel="nofollow">教程</a>我配置了测试环境来测试react组件,但是报错了,不知道为什么?</p><h2>环境的介绍</h2><ul><li>用<code>vite</code>来构建我们的项目</li><li>安装<code>vitest</code>、<code>jsdom</code>、<code>@testing-library/react</code>、<code>@testing-library/jsdom</code></li><li><p>在根目录下创建<code>testSetup.js</code></p><pre><code class="javascript">import { afterEach } from 'vitest'
import { cleanup } from '@testing-library/react'
import '@testing-library/jest-dom/vitest'
afterEach(() => {
cleanup()
})</code></pre></li><li><p>修改<code>vite.config.js</code></p><pre><code class="javascript">export default defineConfig({
// ...
test: {
environment: 'jsdom',
globals: true,
setupFiles: './testSetup.js',
}
})</code></pre></li><li><p>修改<code>package.json</code>文件</p><pre><code>scripts: {
...
test: "vitest run"
}</code></pre><h2>React组件</h2><pre><code>// src/component/Note.jsx
const Note = ({ note, toggleImportance }) => {
const label = note.important ? "make not important" : "make important";
return (
<li className="note">
{note.content}
<button onClick={toggleImportance}>{label}</button>
</li>
);
};
export default Note;</code></pre></li></ul><h2>测试</h2><pre><code>// src/component/Note.test.js
import { render, screen } from "@testing-library/react";
import Note from "./Note";
test("renders content", () => {
const note = {
content: "Component testing is done with react-testing-library",
important: true,
};
render(<Note note={note} />);
const element = screen.getByText(
"Component testing is done with react-testing-library"
);
expect(element).toBeDefined();
});</code></pre><h2>报错</h2><p><img width="723" height="157" src="/img/bVdbPYJ" alt="image.png" title="image.png"></p><blockquote>Error: Expression expected<br> ❯ getRollupError node_modules/vitest/node_modules/rollup/dist/es/shared/parseAst.js:376:41<br> ❯ convertProgram node_modules/vitest/node_modules/rollup/dist/es/shared/parseAst.js:1040:26<br> ❯ parseAstAsync node_modules/vitest/node_modules/rollup/dist/es/shared/parseAst.js:2186:12<br> ❯ ssrTransformScript node_modules/vitest/node_modules/vite/dist/node/chunks/dep-jvB8WLp9.js:54248:15</blockquote><p>猜测:是不是和jsx语法有关? 我注释掉render及之后的操作是不会报错的,只注释render之后的操作会报错,这个错误应该出现在render的调用过程中。</p>
如何在Swiper中实现淡出淡入切换效果?
https://segmentfault.com/q/1010000044728087
2024-03-19T17:59:28+08:00
2024-03-19T17:59:28+08:00
GuoWenqing
https://segmentfault.com/u/guowenqing
0
<p>swiper 设置切换效果不生效</p><pre><code> :effect="fade"
:fadeEffect="{
crossFade: true
}"</code></pre><p>我想将swiper切换效果 设置成淡出淡出这种<br>但是我在代码中这样子设置没有生效是为什么 在控制台报了个 fade在渲染期间被访问,但没有在实例中定义<br>使用的swiper版本为8.3.2</p><p>啊啊啊</p>
golang 如何正确调用第三方程序,路径引号问题?
https://segmentfault.com/q/1010000044728047
2024-03-19T17:50:58+08:00
2024-03-19T17:50:58+08:00
zeronofreya
https://segmentfault.com/u/zeronofreya_5e391a8a48acc
0
<p>参数是前台传过来的,路径自带引号,考虑到空格问题,不能去</p><p>我知道可以不经过cmd调用,但出于个人理由此处不使用</p><pre><code class="go">// 这是模拟的参数
cmdLine = `"d:/.../i_view64.exe" "E:/465f55d02d.jpg"`
cmd := exec.Command("cmd.exe")
cmd.SysProcAttr = &syscall.SysProcAttr{CmdLine: "/c " + cmdLine}
var out bytes.Buffer
var stderr bytes.Buffer
cmd.Stdout = &out
cmd.Stderr = &stderr
if err := cmd.Run(); err != nil {
log.Println(fmt.Sprint(err) + ": " + stderr.String())
} else {
log.Println(out.String())
}</code></pre><p>输出结果为:<br><code>2024/03/19 17:38:41 exit status 1: �ļ�����Ŀ¼�������������ȷ��</code></p><blockquote>乱码我已经放弃了,谷歌了很久没有能解决的,大家有好办法欢迎回答。</blockquote><p>改为</p><pre><code>cmd.SysProcAttr = &syscall.SysProcAttr{CmdLine: "/c echo 123 && " + cmdLine}</code></pre><p>很神奇,不报错了,但乱码还是不变的——虽然不知道什么内容</p><p>还有一个尝试:</p><pre><code>cmd.SysProcAttr = &syscall.SysProcAttr{CmdLine: "/c chcp 65001 && " + cmdLine}</code></pre><p>修改cmd的编码为utf8,没用!</p><p>另外</p><pre><code>cmd := exec.Command("cmd.exe", "/c", fmt.Sprintf("chcp 65001 && %s", cmdLine))</code></pre><p>这个也试了,直接报错,图片都没打开。</p><p>各位有何高见?</p><p>谢谢</p>
高德地图原生开发中,地图无法加载出来?
https://segmentfault.com/q/1010000044727966
2024-03-19T17:36:45+08:00
2024-03-19T17:36:45+08:00
一个凹
https://segmentfault.com/u/yigeao
0
<p>高德地图使用的原生,突然之间加载不出来是为什么?做了一下marker标记,然后就加载不出来,回退代码之后还是加载不出来。有做过原生高德地图的朋友吗?麻烦指导一下,谢谢。我要的效果很简单,就是在地图上标记设备位置,然后在标记上绑定一个点击事件,点击获取在线设备的状态。<br>另外有做过物联网的哥们吗?就是这个获取设备状态信息是服务端做还是前端做的?<br><img width="723" height="508" src="/img/bVdbPWQ" alt="image.png" title="image.png"></p>
有比较推荐的基于Vue的即时通讯开源插件吗?
https://segmentfault.com/q/1010000044727941
2024-03-19T17:29:01+08:00
2024-03-19T17:29:01+08:00
codingfly
https://segmentfault.com/u/codingfly
0
<p>轻量化一点,不用太复杂的</p>
GO切片问题:一个切片从中间删除用另外一个变量接收原切片值变化的原理是啥?
https://segmentfault.com/q/1010000044727548
2024-03-19T16:32:57+08:00
2024-03-19T16:32:57+08:00
李森森1
https://segmentfault.com/u/max911
0
<p>一个go切片的问题</p><pre><code class="golang"> var i = 3
nums := []int{1, 2, 3, 4, 5, 6}
nums6 := append(nums[:i], nums[i+2:]...)
fmt.Println(nums, nums6)</code></pre><p>这段代码nums 最终输出为什么变成了[1,2,3,6,5,6]<br>输出内容为:<code>// [1 2 3 6 5 6] [1 2 3 6]</code><br>看这个输入nums应该是改动了,但是为什么5,6又还在呢</p>
使用Vue.js制作图片到Div的飞入和缩小效果?
https://segmentfault.com/q/1010000044727265
2024-03-19T16:03:55+08:00
2024-03-19T16:03:55+08:00
花开浅夏
https://segmentfault.com/u/xtqaq
0
<p>大佬们,用vue怎么实现,上面是一个图片,下面是一个div,点击图片飞入到div里面(垂直方向上),且图片慢慢缩小直至消失呢?</p><p>translate(0rpx, 100px),用这个写,慢慢缩小的怎么做呢,且可以飞到div里指定位置</p>
如何解决Vue项目上线后请求地址错误?
https://segmentfault.com/q/1010000044727006
2024-03-19T15:41:03+08:00
2024-03-19T15:41:03+08:00
WS
https://segmentfault.com/u/ws_65f940fa5b50e
-1
<p>vue项目打包上线之后 请求地址错乱 <img width="723" height="31" src="/img/bVdbPHr" alt="1710833964594.png" title="1710833964594.png"></p><p>不知道啥问题</p>
nginx使用流程?
https://segmentfault.com/q/1010000044726730
2024-03-19T15:11:11+08:00
2024-03-19T15:11:11+08:00
聿夆昜
https://segmentfault.com/u/y_f_654362a186c7d
0
<p>只有一个nginx.conf文件,电脑没有做过其余任何操作,无安装或配置nginx... 的前提下<br>测试线上环境需要nginx代理<br>那前端人员接下来需要干什么</p><p>搜索的五花八门,也不知道该先干什么,大佬们有没有什么流程呢</p>
解决PNG图片加载错误的方法?
https://segmentfault.com/q/1010000044726654
2024-03-19T15:01:27+08:00
2024-03-19T15:01:27+08:00
想出国的黄瓜_eiac0W
https://segmentfault.com/u/xiangchuguodehuanggua_eiac0w
-3
<p><img width="723" height="447" src="/img/bVdbPBv" alt="image.png" title="image.png"><br>这个怎么解决?</p><p>把他们调换顺序也不对</p>
有没有相关的库可以在微信小程序中绘制数学曲线图?
https://segmentfault.com/q/1010000044726494
2024-03-19T14:48:17+08:00
2024-03-19T14:48:17+08:00
changli
https://segmentfault.com/u/changli
0
<p>提供一个数学公式,例如 y = 2x, 就可以在笛卡尔坐标系下绘制数学曲线,最好支持曲线的过渡动画</p>
为什么安装 @quasar/quasar-ui-qmarkdown 之后报错 Can't resolve 'quasar'?
https://segmentfault.com/q/1010000044726359
2024-03-19T14:28:25+08:00
2024-03-19T14:28:25+08:00
ponponon
https://segmentfault.com/u/ponponon
0
<p>为什么安装 @quasar/quasar-ui-qmarkdown 之后报错 Can't resolve 'quasar'</p><p>衔接上一个问题:<a href="https://segmentfault.com/q/1010000044726179">yarn 安装 qmarkdown 报 yarn 网络错误?</a></p><pre><code class="json">{
"name": "tracking-king",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@ant-design/icons-vue": "^7.0.1",
"@quasar/quasar-ui-qmarkdown": "^2.0.0-beta.10",
"ant-design-vue": "^3.2.20",
"axios": "^1.4.0",
"core-js": "^3.8.3",
"echarts": "^5.4.2",
"element-plus": "^2.3.4",
"vue": "^3.2.13",
"vue-json-viewer": "^3.0.4",
"vue-request": "^2.0.4",
"vue-router": "^4.1.6"
},
"devDependencies": {
"@babel/core": "^7.12.16",
"@babel/eslint-parser": "^7.12.16",
"@vue/cli-plugin-babel": "~5.0.0",
"@vue/cli-plugin-eslint": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"eslint": "^7.32.0",
"eslint-plugin-vue": "^8.0.3",
"less": "^4.1.3",
"less-loader": "^11.1.3"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/vue3-essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "@babel/eslint-parser"
},
"rules": {
"vue/multi-word-component-names": 0,
"vue/no-unused-components": "off",
"no-unused-vars": "off"
}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead",
"not ie 11"
]
}
</code></pre><p><img width="723" height="243" src="/img/bVdbPw2" alt="图片.png" title="图片.png"> </p><p>已经安装上了,再按照 <a href="https://link.segmentfault.com/?enc=XnBko9dHJhhDIxbbdLP39g%3D%3D.LiX0NrtugDSBjMXlKw9ROy3R1x4XeTYgp45NzsJS0960y0MhjALlKMJ1b3qoomUbx6CM%2FBZecFkE3KHNNJsQHL9AA659jh0Zv2sC7jknz9A%3D" rel="nofollow">https://qmarkdown.netlify.app/all-about-qmarkdown/installatio...</a> 提示修改 <code>src/main.js</code></p><p><img width="723" height="383" src="/img/bVdbPxb" alt="图片.png" title="图片.png"></p><pre><code class="js">import { createApp } from "vue";
import App from "./App.vue";
import router from "./router";
// import Antd from "ant-design-vue";
// import "ant-design-vue/dist/antd.css";
import Antd from "ant-design-vue";
import "ant-design-vue/dist/antd.css";
import JsonViewer from "vue-json-viewer";
import TopBar from "@/components/common/TopBar.vue";
import { boot } from 'quasar/wrappers'
import Plugin from '@quasar/quasar-ui-qmarkdown'
import '@quasar/quasar-ui-qmarkdown/dist/index.css'
const app = createApp(App).use(router).use(Antd).use(JsonViewer).use(Plugin);
app.component("top-bar", TopBar);
app.mount("#app");
</code></pre><p>但是使用 <code>yarn serve</code> 启动就报错了, 这是为什么呢?</p><pre><code class="shell"> ERROR Failed to compile with 2 errors 2:24:20 PM
error in ./node_modules/@quasar/quasar-ui-qmarkdown/dist/index.esm.js
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/dist'
error in ./src/main.js
Module not found: Error: Can't resolve 'quasar/wrappers' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/src'
ERROR in ./node_modules/@quasar/quasar-ui-qmarkdown/dist/index.esm.js 14:0-68
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/dist'
@ ./src/main.js 12:0-49 14:69-75
ERROR in ./src/main.js 11:0-39
Module not found: Error: Can't resolve 'quasar/wrappers' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/src'
webpack compiled with 2 errors</code></pre><hr><p>使用 boot 之后还是会报错</p><pre><code class="js">import { createApp } from "vue";
import App from "./App.vue";
import router from "./router";
// import Antd from "ant-design-vue";
// import "ant-design-vue/dist/antd.css";
import Antd from "ant-design-vue";
import "ant-design-vue/dist/antd.css";
import JsonViewer from "vue-json-viewer";
import TopBar from "@/components/common/TopBar.vue";
import { boot } from 'quasar/wrappers'
import Plugin from '@quasar/quasar-ui-qmarkdown'
import '@quasar/quasar-ui-qmarkdown/dist/index.css'
boot(() => {
const app = createApp(App);
app
.use(router)
.use(Antd)
.use(JsonViewer)
.use(Plugin);
app.component("top-bar", TopBar);
app.mount("#app");
});
</code></pre><p>日志</p><pre><code class="shell"> ERROR Failed to compile with 2 errors 3:20:57 PM
error in ./node_modules/@quasar/quasar-ui-qmarkdown/dist/index.esm.js
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/dist'
error in ./src/main.js
Module not found: Error: Can't resolve 'quasar/wrappers' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/src'
ERROR in ./node_modules/@quasar/quasar-ui-qmarkdown/dist/index.esm.js 14:0-68
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/dist'
@ ./src/main.js 12:0-49 16:48-54
ERROR in ./src/main.js 11:0-39
Module not found: Error: Can't resolve 'quasar/wrappers' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/src'
webpack compiled with 2 errors</code></pre><hr><p>我的项目使用 vue cli 创建的</p><p>所以我换用 「Vue project from src」</p><p><img width="723" height="375" src="/img/bVdbPJ8" alt="图片.png" title="图片.png"></p><pre><code class="js">import { createApp } from "vue";
import App from "./App.vue";
import router from "./router";
import Antd from "ant-design-vue";
import "ant-design-vue/dist/antd.css";
import JsonViewer from "vue-json-viewer";
import TopBar from "@/components/common/TopBar.vue";
import Plugin from "@quasar/quasar-ui-qmarkdown/src/QMarkdown.js";
import "@quasar/quasar-ui-qmarkdown/src/QMarkdown.sass";
const app = createApp(App).use(router).use(Antd).use(JsonViewer).use(Plugin);
app.component("top-bar", TopBar);
app.mount("#app");
</code></pre><p>但是还是报错了</p><pre><code class="shell"> ERROR Failed to compile with 2 errors 3:53:26 PM
error in ./node_modules/@quasar/quasar-ui-qmarkdown/src/components/QMarkdown.js
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/src/components'
Failed to resolve loader: sass-loader
You may need to install it.
ERROR in ./node_modules/@quasar/quasar-ui-qmarkdown/src/components/QMarkdown.js 15:0-68
Module not found: Error: Can't resolve 'quasar' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king/node_modules/@quasar/quasar-ui-qmarkdown/src/components'
@ ./node_modules/@quasar/quasar-ui-qmarkdown/src/QMarkdown.js 1:0-76 4:0-68 4:0-68 7:2-11 8:2-25 11:18-32 11:34-43
@ ./src/main.js 8:0-66 10:69-75
ERROR in ./src/main.js 9:0-56
Module not found: Error: Can't resolve 'sass-loader' in '/Users/ponponon/Desktop/code/work/vobile-it/tracking-king'
webpack compiled with 2 errors</code></pre><hr><p><code>yarn add quasar</code> 之后,quasar 相关的报错没有了</p><hr><p>但是 <code>yarn add sass-loader sass</code> 遇到了 node 版本报错</p><pre><code class="shell">─➤ yarn add sass-loader sass 1 ↵
yarn add v1.22.21
[1/4] 🔍 Resolving packages...
[2/4] 🚚 Fetching packages...
warning Pattern ["vue-demi@latest"] is trying to unpack in the same destination "/Users/ponponon/Library/Caches/Yarn/v6/npm-vue-demi-0.14.7-8317536b3ef74c5b09f268f7782e70194567d8f2-integrity/node_modules/vue-demi" as pattern ["vue-demi@*","vue-demi@*"]. This could result in non-deterministic behavior, skipping.
error sass-loader@14.1.1: The engine "node" is incompatible with this module. Expected version ">= 18.12.0". Got "16.20.1"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.</code></pre><p>我很奇怪,yarn 不会自动帮我选择一个可用版本吗?</p><hr><p><code>yarn add sass-loader sass</code> 问题,我通过 nvm 切换到 nodejs18.x 解决了</p>
yarn 安装 qmarkdown 报 yarn 网络错误?
https://segmentfault.com/q/1010000044726179
2024-03-19T14:01:35+08:00
2024-03-19T14:01:35+08:00
ponponon
https://segmentfault.com/u/ponponon
0
<p>yarn 安装 qmarkdown 报 yarn 网络错误</p><p>想使用 quasar 的 qmarkdown <a href="https://link.segmentfault.com/?enc=Rb9SOJCTLjpGpIrk3dHYzQ%3D%3D.z7ykST5ue%2FdiOFWDi6pPc8d%2FznCIgxX25mqJHIaayPRTN4bNPjY%2Bzt3cBemMBaz0Q0EHI%2BrfBGDbe8A3pfpnQQ%3D%3D" rel="nofollow">https://qmarkdown.netlify.app/developing/using-qmarkdown</a></p><p>感觉用法很优雅</p><p>所以我参考 <a href="https://link.segmentfault.com/?enc=lTFPk8ckGwwToOnfKesvLA%3D%3D.ZvyfBp9t8lfAqqk3bYyaUS2Phevwvm5%2FWYjKhCE%2BmUM%3D" rel="nofollow">https://madewith.cn/649</a> 使用 yarn 安装 qmarkdown</p><p>但是报错了,莫名其妙</p><pre><code class="shell">─➤ yarn add @quasar/qmarkdown 130 ↵
yarn add v1.22.21
[1/4] 🔍 Resolving packages...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
error Error: read ECONNRESET
at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20)
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.</code></pre><p>然后我参考 <a href="https://segmentfault.com/a/1190000040660323">https://segmentfault.com/a/1190000040660323</a> 设置了淘宝镜像,在安装更加不行了</p><pre><code>╰─➤ yarn config set registry https://registry.npm.taobao.org 1 ↵
yarn config v1.22.21
success Set "registry" to "https://registry.npm.taobao.org".
✨ Done in 0.02s.
</code></pre><pre><code class="shell">─➤ yarn add @quasar/qmarkdown
yarn add v1.22.21
[1/4] 🔍 Resolving packages...
error Error: certificate has expired
at TLSSocket.onConnectSecure (node:_tls_wrap:1539:34)
at TLSSocket.emit (node:events:513:28)
at TLSSocket._finishInit (node:_tls_wrap:953:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:734:12)
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.</code></pre><p>是因为不存在这个包,还是真的是网络问题?</p><p><img width="723" height="435" src="/img/bVdbPue" alt="图片.png" title="图片.png"></p><p><a href="https://link.segmentfault.com/?enc=fImIP8uZMUsu138CQKWx7g%3D%3D.n06aUvgHTa7FTkrASqlXZvkxq3xKA0Kb7G9zpRWaQ%2BV4OwqoqWMA6sUn%2Bz%2F6GgH1" rel="nofollow">https://www.npmjs.com/search?q=qmarkdown</a></p><hr><p>重新找了一个包:<a href="https://link.segmentfault.com/?enc=cWS3rAvtoKOwX8WbM7ry5A%3D%3D.mQJStHLpqvIuwj%2BZAiKKJHof1rrKv8K5vYXObmoMfmh5qpYGX7UrP1praUfoE6a3TnmzEgeZ6lvsaWdUNLdHQAfl9KegEidnI%2FWKw0y%2BJmY%3D" rel="nofollow">https://qmarkdown.netlify.app/all-about-qmarkdown/installatio...</a></p><p>安装还是报错</p><pre><code class="shell">─➤ yarn add @quasar/quasar-ui-qmarkdown@next 1 ↵
yarn add v1.22.21
info No lockfile found.
[1/4] 🔍 Resolving packages...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
error Error: read ECONNRESET
at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20)
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.
</code></pre><p>我按照 <a href="https://link.segmentfault.com/?enc=xQcjG%2Faj%2F0drEIywmVxs8w%3D%3D.D64%2FfLWUnJVNt8%2ByVmmmUi2lN1JKbUKFJ6MloMMhThhLA1N14w6r0uU%2B8Ggq0UpmLCjrl5nLkJo%2BTD9c1miLkhYNmADxTvQpaaiUdcXcfAz8%2F9APMqAznqYL58by97TWLhTY4x9WGCdy9RjqeMxAx13vaYaLL1tCmQQwW09%2BeBY%3D" rel="nofollow">https://stackoverflow.com/questions/51508364/yarn-there-appears-to-be-trouble-with-your-network-connection-retrying</a> 里面的把 yarn.lock 删除之后,重新执行 <code>yarn add @quasar/quasar-ui-qmarkdown@next</code> 还是一样的报错</p>
elementUi组件el-time-picker 有is-range属性 如何禁用选择当前时间之前的时间?
https://segmentfault.com/q/1010000044726171
2024-03-19T13:58:46+08:00
2024-03-19T13:58:46+08:00
谁吃了我de草莓
https://segmentfault.com/u/shuichiliaowodecao
0
<p>遇到这样的问题 elementUi组件el-time-picker 有is-range属性 如何禁用选择当前时间之前的时间?<br><img width="568" height="396" src="/img/bVdbPtD" alt="image.png" title="image.png"></p><p>这里也有贴 没有找到合适的答案 <a href="https://segmentfault.com/q/1010000010348959">https://segmentfault.com/q/1010000010348959</a></p>
如何解决MyBatis依赖导入问题?
https://segmentfault.com/q/1010000044725884
2024-03-19T12:35:25+08:00
2024-03-19T12:35:25+08:00
着急的山寨机
https://segmentfault.com/u/zhuojideshanzhaiji
0
<p>我已经通过 pom 的方式引入了 MyBatis 的依赖,pom 文件的部分内容如下:</p><pre><code class="xml"><dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency></code></pre><p>但是当我尝试导入包的时候:</p><pre><code class="java">import org.apache.ibas.annotations.Mapper</code></pre><p>IDEA 提示“无法解析符号 'ibatis'”,而当我运行程序时,终端提示 <code>org.apache.ibatis.annotations</code> 包不存在。</p><p>我该如何解决这个问题?<code>mybatis-spring-boot-starter</code>的依赖应该包含<code>org.apache.ibatis.annotations</code>包,为什么它不起作用呢?</p><p>我知道我可以使用<code>ibatis-core</code>的依赖替代,但这两者之间应该是有一些区别的?因为实际上,当我引入<code>ibatis-core</code>的依赖时,我会遇到一些其他的错误,如下所示:</p><pre><code class="xml"><dependency>
<groupId>org.apache.ibatis</groupId>
<artifactId>ibatis-core</artifactId>
<version>3.0</version>
</dependency></code></pre><p>谢谢你的耐心和帮助,如果你能提供无私的帮助,我会非常高兴 :)</p><p>我已经尝试过使用 maven clean 和 install,但它不起作用。</p>
这种监测某元素滚动位置的js代码如何写?
https://segmentfault.com/q/1010000044725546
2024-03-19T11:19:35+08:00
2024-03-19T11:19:35+08:00
ilovelnmp
https://segmentfault.com/u/ilovelnmp
0
<p>以下这种监测某元素滚动位置的js代码如何写?<br>html代码如下,如何通过window.scroll侦测下面某个段落的top至bottom部分正与页面可视区域的顶部接触,也就是想知道,滑动经过可视区域的顶部的当前是哪个段落?</p><pre><code><body>
<div>
<!--一个段落开始-->
<div dh="A">A</div>
<ul h="A">
<li>...</li>
...
</ul>
<!--一个段落结束-->
<div dh="B">B</div>
<ul h="B">
<li>...</li>
...
</ul>
....
<div dh="Z">Z</div>
<ul h="Z">
<li>...</li>
...
</ul>
</div>
</body></code></pre>
原生JS实现表格行列精确滑动隐现的方法?
https://segmentfault.com/q/1010000044725511
2024-03-19T11:14:35+08:00
2024-03-19T11:14:35+08:00
藕丝空间
https://segmentfault.com/u/ousikongjian
0
<p>使用原生JS,如何控制 scroll 像 excel 表格那样上下左右的滑动,而且重点是,每一次滑动,正好能够隐藏一列或一行表格?</p>
如何在不影响用户界面的情况下实现控制台乱码?
https://segmentfault.com/q/1010000044725326
2024-03-19T10:41:30+08:00
2024-03-19T10:41:30+08:00
Yuexih
https://segmentfault.com/u/yuexih
0
<p>想在某小说网站"免费"下载一篇小说, 结果无意间发现这个网站能做到网页内展示正常, 但控制台却是乱码的操作 <a href="https://link.segmentfault.com/?enc=HXUNDTprBBeG46JAM7Yzmw%3D%3D.tN322CRMg5kxdKHxrRu%2BZ8C9acUSfDQaEyJs2nHfjQKFRj8slB6Sl2W8n0%2B6gIPqSxp14zlZ4WWh5EgVNssUnDOutAKvMtZI2%2BT5VPJEmbo%3D" rel="nofollow">这是对应网站的地址</a></p><p><img width="723" height="535" src="/img/bVdbPfg" alt="image.png" title="image.png"></p><p>这种问题除非带图, 否则不好描述, 所以百度,google,bing,copilot都没结果.</p><p>想知道如何实现这种高端功能,</p>
高德地图API2.0,绘制轨迹线和轨迹点?
https://segmentfault.com/q/1010000044725272
2024-03-19T10:35:47+08:00
2024-03-19T10:35:47+08:00
时倾
https://segmentfault.com/u/shiqing_63b8eb678154d
0
<p>请问各位大佬们。使用高德地图api2.0绘制轨迹线和轨迹点时,为了性能的优化我想实现在地图上渲染轨迹点和轨迹线的数量不超过30个,当超过30个时就删除以前的旧数据,新数据继续绘制轨迹点和轨迹线?</p><pre><code>const trackPoints: any = ref([])//存储后台返回的经纬度
const timer: any = ref(null)// 定时器
const initMap = () => {
AMapLoader.load({
key: "859d5ecb09c62ff524ce665eb76f0543", // 申请好的Web端开发者Key,首次调用 load 时必填
version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
plugins: [], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
}).then((AMap) => {
const map = new AMap.Map("container", {
center: [103.932631, 30.743173], //初始化地图中心点位置
//设置地图容器id
viewMode: "3D", //是否为3D地图模式
layers: [new AMap.TileLayer.Satellite()],//设置地图图层为卫星地图
// layers: [currentLayer.value],//设置地图图层为卫星地图
zoom: 18, //初始化地图级别
zooms: [2, 30], //设置缩放级别范围 2-30 级
resizeEnable: true
});
map.setDefaultCursor("pointer");//设置默认鼠标样式
//添加插件
AMap.plugin(["AMap.ToolBar", "AMap.Scale", "AMap.TileLayer", "AMap.HawkEye", "AMap.MapType", "AMap.MouseTool", "AMap.RangingTool",],
function () {
//异步同时加载多个插件
map.addControl(new AMap.ToolBar({ position: { top: '10px', right: '20px' } })); // 工具条控件;范围选择控件
map.addControl(new AMap.Scale()); //显示当前地图中心的比例尺
// 以下是鼠标工具插件
Car_Point_Polyline()
});
// 车辆图标 ,轨迹点,轨迹线
function Car_Point_Polyline() {
// 车辆图标
const marker = new AMap.Marker({
map: map,// 将图标添加到地图上
position: [103.932631, 30.743173],//设置初始车辆起点
icon: new AMap.Icon({
size: new AMap.Size(40, 40),
image: 'MapImg/car.png',
imageSize: new AMap.Size(40, 20),
imageOffset: new AMap.Pixel(0, 0),
// angle: rotation, // 设置初始旋转角度
})
});
// 轨迹点
let circleMarker = new AMap.CircleMarker({
map: map,
// center: coordtransform.wgs84togcj02(104.22444664, 30.57401621),
radius: 5,//圆形标记的半径大小,单位为像素。
strokeColor: 'red',//边线颜色
strokeWeight: 2,//边线宽度
// strokeOpacity: 0.5,//边线透明度
fillColor: 'red',//填充颜色
// fillOpacity: 0.5,//填充透明度
zIndex: 10,//圆形标记的层级,用于控制显示顺序
bubble: true,//是否开启圆形标记的气泡效果
cursor: 'pointer',//鼠标悬停在圆形标记上时的指针样式
clickable: true,//圆形标记是否响应鼠标点击事件
})
function drawTrackPoints(points) {
// 判断并保持轨迹点不超过30个
while (points.length > 30) {
points.shift(); // 如果超过30个,就从数组前端移除
}
// 以下是创建轨迹点的逻辑(不变)
circleMarker.hide(); // 隐藏之前的轨迹点
points.forEach(point => {
circleMarker = new AMap.CircleMarker({
map: map,
center: point,
radius: 5,
strokeColor: 'red',
strokeWeight: 2,
fillColor: 'red',
zIndex: 10
});
});
}
//轨迹线
const polyline = new AMap.Polyline({
map: map,// 将轨迹线添加到地图上
path: [], // 初始为空
// showDir: true,//(轨迹线内添加箭头)
strokeColor: "red", // 轨迹线颜色
strokeWeight: 5, // 轨迹线宽度
});
// 模拟后台返回的经纬度坐标数据
function getRandomCoordinate() {
// 目标经纬度
let lng = Math.random() * 0.01 + 103.932631; // 随机生成经度
let lat = Math.random() * 0.01 + 30.743173; // 随机生成纬度
return [lng, lat];
}
setInterval(() => {
const lnglat = getRandomCoordinate();
// const angle = Math.random() * 360; // 生成一个0~360之间的随机角度
// marker.setAngle(angle); // 设置车辆的旋转角度
// marker.setPosition(lnglat); // 更新车辆图标位置
trackPoints.value.push(lnglat); // 将轨迹点的位置信息保存在数组中
drawTrackPoints(trackPoints.value); // 调用函数在地图上绘制轨迹点
polyline.setPath([...polyline.getPath(), lnglat]); // 添加经纬度点到轨迹线对象
}, 1000); // 每隔1秒执行一次
}
}).catch((e) => {
console.log(e);
});
}</code></pre>
如何使用Autocomplete实现颜色选择?
https://segmentfault.com/q/1010000044724972
2024-03-19T09:54:18+08:00
2024-03-19T09:54:18+08:00
夏茗星
https://segmentfault.com/u/wuyagege
0
<p><img width="723" height="130" src="/img/bVdbPam" alt="image.png" title="image.png">大佬们,想实现这么个效果,然后下拉框中是可以切换的颜色选择,只想在输入框中用一小块区域来显示颜色变化,请问咋实现呢~求助</p><p>希望能得到些实现的灵感和想法~</p>
一个很复杂的项目用什么前端框架比较好?
https://segmentfault.com/q/1010000044724718
2024-03-19T07:42:24+08:00
2024-03-19T07:42:24+08:00
寅春树
https://segmentfault.com/u/chunshu
0
<p>公司要做一个医院病理系统,我大概看了一下功能,项目非常的复杂,页面估下来有300多个页面,而且这项目要做成BS架构(浏览器-服务端),这就叫我在选择前端框架的时候为难了,我们非常用的就是vue+elementplus,但这么大的项目用vue就有点不合适了,大家有人做过这样的项目吗?用什么前端框架比较好?</p><p>我看其它公司的前端框架好像extjs,也像dwt(jui),不知道有做过这块的没?这几个框架的生态好吗?或者有没有更好的选择?</p>
求推荐一本C++的,多线程,并发有关的书籍,名著之类的?
https://segmentfault.com/q/1010000044724660
2024-03-19T07:10:49+08:00
2024-03-19T07:10:49+08:00
wbdcg
https://segmentfault.com/u/wbdcg
0
<p>求推荐一本C++的,多线程,并发有关的知识的书籍,名著之类的.<br>面试的时候似乎对这方面的知识的把握要求很高...我不知道背一个线程池的代码能不能管用.</p>
VUE3 + element-plus, this.$emit失效,为什么?
https://segmentfault.com/q/1010000044724195
2024-03-18T21:24:03+08:00
2024-03-18T21:24:03+08:00
此帐号已被注销
https://segmentfault.com/u/cizhanghaoyibeizhuxiao
0
<p>VUE3 + element-plus,子组件向父组件发送消息(调用父组件函数没有反应),this.$emit方法,请大佬们帮俺看看,谢谢<br><img width="678" height="114" src="/img/bVdbOXX" alt="image.png" title="image.png"><br><img width="479" height="430" src="/img/bVdbOXW" alt="image.png" title="image.png"><br><img width="565" height="640" src="/img/bVdbOXY" alt="image.png" title="image.png"><br>全部的代码</p><pre><code><template>
<!-- <el-text class="mx-1">条件 {{": "}}</el-text>-->
<div style="margin-bottom: 10px" v-if="dynamicTags.length !=0">
<el-text tag="b"> 条件:</el-text>
<el-tag v-for="tag in dynamicTags"
:key="tag"
:size="'default'"
:hit="true"
closable
:disable-transitions="false"
@close="handleClose(tag)"
style="margin-left: 10px"
effect="dark"
round
>
{{ tag }}
</el-tag>
</div>
<div>
<el-table :data="tableData" style="width: 100%" max-height="500" border stripe highlight-current-row
@header-click="headClick"
@selection-change="handleSelectionChange"
>
<el-table-column
v-for="[p,f] in props"
:prop="p"
:label="p"
:fixed="f"
:width="150"
:align="'center'"
:sortable="true"
:min-width="100"
>
<template #header>
<newnew v-if="click_value==p" :column="p" :column_filter_type="'scope'"
:select_items="select_item"></newnew>
</template>
</el-table-column>
<el-table-column label="Info" width="150" :align="'center'">
<template #default="scope">
<el-button type="primary" size="small" @click="more_about(scope.$index)"
>ShowMore
</el-button
>
</template>
</el-table-column>
<el-table-column type="selection" width="55" :fixed="'right'"/>
</el-table>
<el-pagination
style="margin-top : 10px; text-align:center"
v-model:current-page="currentPage3"
v-model:page-size="pageSize3"
:small=true
:background=true
layout="total, prev, pager, next, jumper"
:total="100"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</div>
</template>
<script lang="ts" setup>
import {get_filter_type, legal_judge, zip} from '../../api/utils'
import {nextTick, ref} from 'vue'
import {ElMessage, ElMessageBox, ElInput} from 'element-plus'
import type {Action} from 'element-plus'
import {getTableData, getTableProps} from "../../api/test-data"
import customHeader from "./customHeader.vue";
import newnew from "./newnew.vue"
let click_value = ref("")
let pageSize3 = ref(20)
let currentPage3 = ref(1)
function handleSizeChange(value) {
// 页面大小改变
console.log("handleSizeChange " + value)
}
function handleCurrentChange(value) {
// 当前页码改变
console.log("handleCurrentChange " + value)
}
function log() {
console.log("stop")
}
const row_labels = getTableProps()
const tableData = getTableData()
const fixed = Array(row_labels.length)
fixed[0] = true
for (let i = 1; i < row_labels.length; i++) {
fixed[i] = false
}
const props = zip(row_labels, fixed)
const inputValue = ref('')
const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3'])
const inputVisible = ref(false)
const InputRef = ref<InstanceType<typeof ElInput>>()
const select_item = [[0, '0'], [1, '1']]
const handleClose = (tag) => {
dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1)
console.log(`delete tag: ${tag}`)
}
function headClick(column, event) {
console.log(`${column.label}`)
click_value.value = column.label
}
function handleSelectionChange(value) {
console.log("handleSelectionChange" + value)
}
function conditionUpdate(data) {
/**
* @param data {column, column_filter_type, condition}
* des: 用户传来筛选条件来更新表格
*/
let {column, column_filter_type, condition} = data
let filter_type = get_filter_type()
if (column_filter_type === filter_type['text']) {
}
if (column_filter_type === filter_type['scope']) {
}
if (column_filter_type === filter_type['date']) {
}
if (column_filter_type === filter_type['select']) {
}
console.log("conditionUpdate " + data)
}
</code></pre><pre><code><template>
<div @click.stop style="display: inline-block ">
<el-popover
placement="bottom"
title="查询条件"
trigger="hover"
width="300"
:visible=open_flag
ref="popoverRef"
>
<template #reference>
<span @click="open_flag=true">{{ column }}</span>
</template>
<!-- text 文本简略搜索-->
<div v-if="column_filter_type === filter_type['text']">
<el-input style="width: 200px"
v-model="this.condition.value_start"
placeholder="请输入查询内容"
>
</el-input>
</div>
<!-- scope 范围 数值类型-->
<div v-else-if="column_filter_type === filter_type['scope']">
<el-input
style="width: 120px"
v-model="this.condition.value_start"
placeholder="条件1"
></el-input>
-
<el-input
style="width: 120px"
v-model.trim="condition.value_end"
placeholder="条件2"
></el-input>
</div>
<!-- date 日期-->
<div v-else-if="column_filter_type === filter_type['date']">
<el-date-picker
style="width: 120px; margin-top: 10px;margin-right: 10px"
v-model="condition.value_start"
type="date"
clearable
placeholder="开始时间"
value-format="YYYY-MM-DD"
></el-date-picker>
<el-date-picker
style="width: 120px; margin-top: 10px;"
v-model="condition.value_end"
type="date"
clearable
placeholder="结束时间"
value-format="YYYY-MM-DD"
></el-date-picker>
</div>
<!-- select 选择框-->
<div v-else-if="column_filter_type===filter_type['select']">
<el-select
v-model="condition.value_start"
placeholder="请选择"
style="width: 100%"
clearable
>
<el-option
v-for="[value, index] in select_items"
:key="index"
:label="value"
:value="value"
>
</el-option>
</el-select>
</div>
<div v-else>
<el-text type="warning" tag="b">此数据类型暂不支持查询</el-text>
</div>
<br>
<div style="text-align: right; margin-left: 20px">
<el-button text @click="open_flag=false">cancel</el-button>
<el-button type="primary" @click="confirm">confirm</el-button>
</div>
</el-popover>
</div>
</template>
<script>
import {ref} from "vue";
import {get_filter_type, legal_judge} from "../../api/utils.ts";
export default {
name: "newnew",
props: ["column", "column_filter_type", "select_items"],
data() {
return {
open_flag: ref(true),
condition: {
value_start: "",
value_end: ""
},
filter_type: get_filter_type()
}
},
methods: {
confirm() {
this.open_flag = false
if (this.column_filter_type === this.filter_type['text']) {
if (!legal_judge('text', this.condition)) {
return this.$message.warning("请正确筛选条件");
}
} else if (this.column_filter_type === this.filter_type['scope']) {
if (!legal_judge('scope', this.condition)) {
return this.$message.warning("请正确筛选条件");
}
} else if (this.column_filter_type === this.filter_type['date']) {
if (!legal_judge('date', this.condition)) {
return this.$message.warning("请正确筛选条件");
}
} else if (this.column_filter_type === this.filter_type['select']) {
if (!legal_judge('select', this.condition)) {
return this.$message.warning("请正确筛选条件");
}
} else {
return null
}
console.log(this.condition.value_start)
console.log(this.condition.value_end)
this.$emit("conditionUpdate", {
column: this.column,
column_filter_type: this.column_filter_type,
condition: this.condition
})
},
}
}
</script>
</code></pre><p>百度了好久都怎么管用的,刚学不太懂</p>
更新时我们需要发送所有的字段,而不仅仅是要更新的字段吗?
https://segmentfault.com/q/1010000044724014
2024-03-18T19:31:50+08:00
2024-03-18T19:31:50+08:00
peterhuan
https://segmentfault.com/u/huanxianzhu
0
<p>更新时我们需要发送所有的字段,而不仅仅是要更新的字段吗?</p><p>在做<a href="https://link.segmentfault.com/?enc=SRxt3IEzRKBulEw2Wslhfg%3D%3D.Obo3dNZqqhg%2Fm0yqMK0r4%2BTKyNvRrUw3T7WaW%2BEYTnOU%2FDgFkGfrm4uKg3QVwIH86Mxf6v9%2BYe3L0MoADO1tlsmeYIP5uczv17P2gzlsDKSAmclTaRoFsbJ69dDLfEjp" rel="nofollow">fullstackopen</a>的练习的时候,对这个题目描述不解?当我们只需更新<code>likes</code>字段,需要将其他的字段信息也放到请求中吗?</p><p><img width="723" height="318" src="/img/bVdbOU5" alt="image.png" title="image.png"></p><p>对这个项目做一个简短的介绍<br>使用到的一些技术: <code>mongodb</code>、<code>react</code>、<code>axios</code>(用于前端和后端通信)、<code>express</code>、<code>restful </code><br>后端相关的操作如下所示</p><pre><code class="javascript">blogRouter.put("/:id", async (request, response) => {
const body = request.body;
const blog = {
title: body.title,
author: body.author,
url: body.url,
likes: body.likes,
};
const updateBlog = await Blog.findByIdAndUpdate(request.params.id, blog, {
new: true,
runValidators: true,
}).populate("user", { username: 1, name: 1 });
if (updateBlog) {
response.send(updateBlog);
} else {
response.status(404).end();
}
});</code></pre><ul><li>经过测试发现,<code>findByIdAndUpdate</code>应该只会更新我们通过参数传送的字段,而其他的会保持不变。</li><li>我使用<code>postman</code>测试,只需要发送一个<code>likes</code>字段的信息就可以达到预期的效果,只更改了<code>likes</code>字段,其他保持不变。<br><strong>那为什么题目还说要发送所有的字段呢?</strong><br><img width="723" height="476" src="/img/bVdbOVd" alt="image.png" title="image.png"></li></ul><p>博客的schema定义</p><pre><code>const mongoose = require("mongoose");
const blogSchema = new mongoose.Schema({
title: { type: String, required: true },
author: String,
url: { type: String, required: true },
likes: { type: Number, default: 0 },
user: {
type: mongoose.Schema.Types.ObjectId,
ref: "User",
},
});
// https://mongoosejs.com/docs/api/document.html#Document.prototype.toJSON()
blogSchema.set("toJSON", {
transform: (doc, ret) => {
// transform the unqiue identifier into a string representing.
ret.id = ret._id.toString();
delete ret._id;
// we don't require information about the mongodb version.
delete ret.__v;
},
});
module.exports = mongoose.model("Blog", blogSchema);</code></pre>
netty4 websocket 响应返回401,浏览器没有任何反应?
https://segmentfault.com/q/1010000044723858
2024-03-18T18:38:04+08:00
2024-03-18T18:38:04+08:00
mcck_hyj
https://segmentfault.com/u/mcck
0
<p>我在使用netty开发websocket服务器,浏览器使用<code>var socket = new WebSocket("ws://127.0.0.1:18080/ws?token=xxxx");</code>连接时服务器将验证token,如果不通过则返回401并关闭socket。<br>服务器响应代码:</p><pre><code class="java"> private void httpResponse401(ChannelHandlerContext ctx, FullHttpRequest request){
FullHttpResponse response = new DefaultFullHttpResponse(request.protocolVersion(), HttpResponseStatus.UNAUTHORIZED);
response.headers().set(HttpHeaderNames.CONTENT_LENGTH, 0);
ctx.writeAndFlush(response).addListener(ChannelFutureListener.CLOSE);
ReferenceCountUtil.release(request);
}</code></pre><p>目前情况是socket虽然关闭,但浏览器好像没有收到401的响应。我需要在浏览器种能知道连接关闭是因为401还是其他什么情况。<br><img width="723" height="348" src="/img/bVdbOSC" alt="image.png" title="image.png"><br><img width="723" height="540" src="/img/bVdbOSD" alt="image.png" title="image.png"></p>
vue3+vite 打包生成的js把路由全返回了?
https://segmentfault.com/q/1010000044723577
2024-03-18T17:47:21+08:00
2024-03-18T17:47:21+08:00
realwds
https://segmentfault.com/u/realwds
0
<p>项目用的 vue3+vite,包管理器 pnpm,执行 pnpm build。<br>生成的js为啥把路由劝返回出来了。被检测存在系统路径信息泄露,怎么解决呢</p><p><img width="723" height="147" src="/img/bVdbONV" alt="image.png" title="image.png"></p><p>vite配置文件build部分:</p><pre><code>build: {
assetsDir: assetsDir,
minify: 'terser',
sourcemap: false,
chunkSizeWarningLimit: 1500,
terserOptions: {
format: {
comments: false,
},
},
rollupOptions: {
output: {
entryFileNames: `${assetsDir}/[name].${appVersion}.js`,
chunkFileNames: `${assetsDir}/[name].${appVersion}.js`,
assetFileNames: `${assetsDir}/[ext]/[name].${appVersion}.[ext]`,
},
},
}</code></pre><p>build生成的js文件:<br><img width="723" height="360" src="/img/bVdbOPt" alt="image.png" title="image.png"></p><p>详细的风险检查报错:<br><img width="723" height="536" src="/img/bVdbPVG" alt="image.png" title="image.png"></p>
现在的项目和后台不变,把之前的项目以及未来新的项目加进一个地址中,通过url后缀切换系统?
https://segmentfault.com/q/1010000044723367
2024-03-18T17:13:45+08:00
2024-03-18T17:13:45+08:00
soulninu
https://segmentfault.com/u/soulninu
0
<p>这种情况一般如何实现呢?<br>接口的话大概这样子:<br><a href="https://link.segmentfault.com/?enc=t%2FUiyVu5IVw39h%2FvbvFaPQ%3D%3D.wSleA8ROsDu1x1EhcQDzQPqNkpl%2F0ccZpcRSmErUf%2B8JCi1wpPJx9yzp4OiFtIqD" rel="nofollow">http://192.168.1.12:6666/api1/111</a><br><a href="https://link.segmentfault.com/?enc=EvcaLB828MBStV793hh6hg%3D%3D.LwC8Owi0BHEuGwA2HJl3F%2BI3fCCp2Q70%2FvZaFVkXevVBqwxlFFKJZuGKaCTfcR8z" rel="nofollow">http://192.168.1.12:6666/api2/222</a></p>
这是哪个jquery框架来着,一时想不起来了?
https://segmentfault.com/q/1010000044723152
2024-03-18T16:43:07+08:00
2024-03-18T16:43:07+08:00
寅春树
https://segmentfault.com/u/chunshu
0
<p>这是哪个jquery框架来着,一时想不起来了?<br>前几年可出名,一时想不起来了,人谁记得吗?<br><img width="723" height="451" src="/img/bVdbOHh" alt="image.png" title="image.png"></p>
如何让 Chrome访问的网站favcion.ico恢复为默认?
https://segmentfault.com/q/1010000044723117
2024-03-18T16:31:44+08:00
2024-03-18T16:31:44+08:00
linkstar
https://segmentfault.com/u/meow233
0
<p>我把 link icon删掉了,清掉了 Chrome 缓存,但还是有原来的这个图标。<br>请问怎么彻底删掉这个缓存呢?</p>
vue 可以让相同key的节点只移动位置不重新渲染吗?
https://segmentfault.com/q/1010000044723105
2024-03-18T16:27:57+08:00
2024-03-18T16:27:57+08:00
你好啊你好
https://segmentfault.com/u/nihaoanihao
0
<p><a href="https://link.segmentfault.com/?enc=9fXAiZntmvGAkyLfIXeStg%3D%3D.GVsmjCsUTIxGp00dh5NDQDwY1ivty%2B8SPkSRYj1lohe5Ex2GgnmOsAJRUDCjqFMFbPPVS68o1jCuogqk6PdlVtGIs4HPUhbvhH%2FfbYOX7idW7HzkS1HRxUNHBBlexNURCc%2FkEicY9EWKlEjKt7uanuTMRO881Ug9wY6q3a9G6cvF%2FoM9xJgluPefnWD9pTjtVxbr3Num%2BKSUJVKt2HyBV0xUTI%2BnQnT%2Bav5MpkermzPvY8OKpRIlTO2TCosLhfAdnQSeKfTFcEDzMZxcPdSvtkFUNoGrYkSrNFY6hgoy18lxpd690axhZrgHLB82WW96xXxzdH20GBextCxWrLLpOQolEOuefUn7W9Ut2xSFZw8FHUJVLfso8buKOiamnmAboAEL1ahVnMDeveJL1%2BLxDPmCM0ILVimVRAi6uGOmRJzOV6e%2Fh4aFjeWKpcrTVWO3jr7pVnbahgiODb0o%2Fiarcml7kIXOLzQlXX0QrpDCmPi3GjII1uhX2L7WIli0cIouu66WFJFEGjGKOvMv3%2FdKOPXIfNxw8lkZqLG8B4NzWDWfYe%2FOilN2IaFBjWzVH2Z03HaLZEVMXweNOAK8ypCAxvcqEUUtsO%2FXQbQsEasE%2BmncuY7u41WO%2Fv51k44Ka3hlxJq%2BMDbHm%2F4FLXzoB%2Fzkig%3D%3D" rel="nofollow">代码复现</a></p><p>我的业务代码中 <code>v-for</code> 创建多个 <code>iframe</code> ,只是删除某一个便会更新后方所有节点,很不好,如何避免呢?<br>可以让相同<code>key</code>的节点只移动位置不重新渲染吗?</p>
vue项目安装依赖,结果element-ui的依赖包里面突然多了个 _where的变量,指向本地的项目地址?
https://segmentfault.com/q/1010000044722955
2024-03-18T15:54:20+08:00
2024-03-18T15:54:20+08:00
LazyHua
https://segmentfault.com/u/lazyhua
0
<p>vue项目安装依赖,结果element-ui的依赖包里面突然多了个 _where的变量,指向本地的项目地址,我想问下这是为啥呀,怎么删掉呀???<br><img width="723" height="375" src="/img/bVdbODI" alt="1710748303366.png" title="1710748303366.png"></p>
请问:SwiftUI的动态替换是什么意思?
https://segmentfault.com/q/1010000044722805
2024-03-18T15:32:40+08:00
2024-03-18T15:32:40+08:00
letier
https://segmentfault.com/u/mark04
0
<p>请问:SwiftUI的动态替换是什么意思?</p><blockquote>动态替换。Swift 编译器和运行时已全面嵌入到 Xcode 中,你可以随时构建和运行你的 App。你看到的设计画布不仅看起来像是用户界面 — 它确实就是你实时运行的 App。此外,使用动态替换功能,Xcode 可以直接在实时运行的 App 中替换成编辑后的代码。</blockquote>
在 canvas 中怎么计算不规则图形的面积?
https://segmentfault.com/q/1010000044722541
2024-03-18T15:04:59+08:00
2024-03-18T15:04:59+08:00
痛并快乐着
https://segmentfault.com/u/tongbingkuailezhuo
1
<p>在 canvas 中怎么计算不规则图形的面积?<br>在 canvas 中,用鼠标绘制了一个不规则图形,不要第三方js库,怎么计算这个不规则图形的面积?<br><strong>要源码</strong></p>
子组件在父组件循环调用,子组件的数据是固定的,想做优化,这样做对吗?
https://segmentfault.com/q/1010000044722404
2024-03-18T14:47:24+08:00
2024-03-18T14:47:24+08:00
小学生
https://segmentfault.com/u/mofashi_5a780b93f2656
0
<p>问题1 子组件是个select ,数据都是从api获取,每次都是固定的内容。<br>父组件中的列表需要大量调用这个子组件,每次这个组件都需要调用api获取数据,每次数据都是一样,这个地方是不是需要优化?</p><p>问题2 如果需要优化的话,从react官网找了一下,简单做了更改,理论上每次excuteCallBack 是同一个引用,但是debug的时候 useEffect每次被调用没法证明excuteCallBack 是不是同一个引用呢?</p><p>理解不足,希望解答一下。</p><pre><code>import React, { useCallback, useEffect, useState } from "react";
import { Team, User } from "@/type/user";
import { Select } from "antd";
import { getTeams } from "@/api";
const { Option } = Select;
interface Props {
record: User;
}
const CusSelect: React.FC<Props> = ({ record }) => {
const [teams, setTeams] = useState<Array<Team>>();
const excuteCallBack = useCallback(
() => {
return getTeams()
},
[]
)
useEffect(() => {
console.log('excuteCallBack reference:',new Date(), excuteCallBack);
async function excute() {
try {
let rest = await excuteCallBack();
//debugger
setTeams(rest.data);
} catch (error) {
console.log(error);
}
}
excute();
}, [excuteCallBack]);
return (
<Select
className="w-4/5"
defaultValue={record.team_name}
disabled={record.role_name != "コーチ"}
onChange={(value) => {
alert(JSON.stringify(record) + value);
}}
>
{teams?.map((item) => (
<Option value={item.team_id} key={item.team_id}>
{item.team_name}
</Option>
))}
</Select>
);
};
export default CusSelect;</code></pre>
CSS 三角效果在不同缩放比例下的解决方案?
https://segmentfault.com/q/1010000044722370
2024-03-18T14:36:56+08:00
2024-03-18T14:36:56+08:00
请鹅出战
https://segmentfault.com/u/you_586c9836e428f
0
<pre><code>.box{
width: 300px;
height: 28px;
&::before{
content:"";
width: 0;
height: 0;
border-bottom: 28px solid red;
border-right: 20px solid transparent;
position: absolute;
top: 0px;
right: -20px;
z-index: 1;
cursor: pointer;
}
}</code></pre><p>这个三角效果在100%的电脑没问题,但是如果用户使用的125%,肉眼可见的便宜了,有解决办法吗?</p>
怎么将 lxc-create 创建的容器 打包成一个镜像?
https://segmentfault.com/q/1010000044722061
2024-03-18T13:57:35+08:00
2024-03-18T13:57:35+08:00
NULL
https://segmentfault.com/u/null_null_null
0
<p>请教一下 怎么将 lxc-create 创建的容器 打包成一个镜像?</p><p>如何将一个 lxc打包成一个 镜像,然后如何 用一个 镜像创建容器呢,有模板、配置文件、容器名等参数可用</p>
音频资源播放问题:a标签与audio标签的差异?
https://segmentfault.com/q/1010000044721778
2024-03-18T12:53:22+08:00
2024-03-18T12:53:22+08:00
简单简同学
https://segmentfault.com/u/jiandanjiantongxue
0
<p>有一段音频的网络资源,把地址加到a标签的href里,然后点击跳转后浏览器能直接播放这段音频,但是把地址加到audio标签的src里却不能播放。<br>下面是资源地址:<br><code>https://lf6-lab-speech-tt-sign.bytespeech.com/tos-cn-o-14155/ocp9nbRY0DCNALVaoAlgeCIvI3t6NAjCHAFA2e?x-expires=1710733418&x-signature=QIHDzi2Ty41dP6ac1iSqVWCpvkQ%3D</code></p><p>复制粘贴地址在浏览器也打不开,只有用a标签跳转才能打开。是网络请求参数的问题吗?</p>
PC端多屏适配,PC兼响应式H5项目实现方案?
https://segmentfault.com/q/1010000044721532
2024-03-18T11:19:33+08:00
2024-03-18T11:19:33+08:00
小小小宇哥
https://segmentfault.com/u/hanyu_59c7d0588f12d
0
<p>我们一般开发 H5 项目的话,做适配的方案就是采用 postcss-pxtorem 或者 postcss-px-to-viewport 方案来解决,设计稿一般都是基于 iphone6 标准来设计的; 这个我一般都知道,就是问下 <strong>2</strong> 个问题:</p><ol><li>那开发 pc 端网页项目,一般是采用什么方案来做不同 pc 屏幕大小的? 设计师一般设计 pc 网页都是基于多少 像素 标准来设计的呢?</li></ol><hr><ol start="2"><li>要做个 pc 兼响应式 h5 的项目,一般都是采用什么什么方案做的呢?</li></ol><p>我是对开发 pc 网页项目不熟悉,有小伙伴知道的,可以说下嘛。</p>
如何处理MySQL中的订阅订单和非订阅订单?
https://segmentfault.com/q/1010000044721505
2024-03-18T11:04:49+08:00
2024-03-18T11:04:49+08:00
乔治的春天
https://segmentfault.com/u/qiaozhidechuntian
0
<p>mysql会员订阅数据表的设计应该如何设计?产品有订阅商品和非订阅的,每次都只能购买一个。<br>订阅有1个月 3个月的 每次到期自动扣费。如果在一个月类购买了几个订阅商品 则扣费按照最新的一个 然后延长到期时间。其实是不是每次订阅都不需要生成新订单的</p><p>翻阅了其他资料都找不到很好的设计</p>
gitlab ci中配置了rules为什么不生效?
https://segmentfault.com/q/1010000044721356
2024-03-18T10:32:54+08:00
2024-03-18T10:32:54+08:00
rossroma
https://segmentfault.com/u/rossroma
0
<pre><code>
workflow:
rules:
- if: '$CI_COMMIT_BRANCH == "develop"'
stages:
- install_deps
- deploy
- publish
variables:
NPM_REGISTRY: "http://npm.xbongbong.com.cn"
NPM_TOKEN: $CI_JOB_TOKEN
cache:
key: ${CI_COMMIT_REF_NAME}
paths:
- node_modules/
- storybook-static/
# 安装依赖
install_deps:
stage: install_deps
script:
- echo "start npm install"
- npm install --legacy-peer-deps
# 静态站点打包并部署
deploy:
stage: deploy
script:
- echo "start npm run build-storybook"
- npm run build-storybook
- echo "start deploy"
- rm -rf /home/nodeServer/dist/
- mv -f storybook-static /home/nodeServer/dist
# npm打包并发布
publish:
stage: publish
before_script:
- echo "//npm.xbongbong.com.cn/:_authToken=\${NPM_TOKEN}" > ~/.npmrc
- npm config set registry $NPM_REGISTRY
script:
- echo "start npm run build"
- npm run build
- echo "start publish"
- npm publish
rules:
- if: '$CI_COMMIT_MESSAGE =~ /^v?\d+\.\d+\.\d+.*$/'
</code></pre><p>配置文件如上,相同的commit message信息,我在本地使用Git提交时,不会触发publish阶段的任务。而在gitlab网页上使用在线IDE进行编辑时,却能正常触发publish阶段,这是什么原因?<br><img width="667" height="323" src="/img/bVdbOej" alt="image.png" title="image.png"></p>
webpack如何重写字体的引用路径,让所有引用的字体资源打包后能集中到某个指定文件夹中?
https://segmentfault.com/q/1010000044721349
2024-03-18T10:29:49+08:00
2024-03-18T10:29:49+08:00
yjc
https://segmentfault.com/u/yjc_5826b717ef4e4
0
<p>这边在给一个样式资源用webpack5做一个打包的整合,打包出来后发现,字体和css在同一个目录中<br><img width="386" height="370" src="/img/bVdbOcb" alt="" title=""><br>这边想让字体打包到目录中的一个子目录custom_fonts/下,然后css在主目录,同时css中的字体文件引用路径也会自动添加custom_fonts/的前缀路径,有什么办法能实现吗?</p><p>PS: 这边尝试过用file-loader,将字体资源全部调整到custom_fonts/,但是发现字体资源现在分别在主目录和custom_fonts/都有一份了,同时css中引用的路径还是主目录的字体资源。(相当于custom_fonts/的资源打包了个寂寞)</p><p>这边附上webpack的配置</p><pre><code class="javascript">const path = require('path')
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
module.exports = {
mode: 'production',
entry: './index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'index.js'
},
resolve: {
extensions: ['.ts', '.js', '.scss', '.css']
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/
},
{
test: /\.(woff|woff2|eot|ttf|otf)$/,
use: [
{
loader: 'file-loader',
options: {
name: '[hash].[ext]',
outputPath: 'fonts/', // 输出路径
}
}
]
},
{
test: /\.scss$/,
use: [
MiniCssExtractPlugin.loader,
{ loader: 'css-loader', options: { importLoaders: 2 } },
'resolve-url-loader',
{
loader: 'sass-loader',
options: { sourceMap: true }
}
]
}
]
},
plugins: [
new MiniCssExtractPlugin({
filename: 'styles.css', // 输出的CSS文件名
}),
]
}</code></pre>
MySQL发现诡异情况,是我写SQL的姿势不对吗!关于日期匹配和随机月份?
https://segmentfault.com/q/1010000044721215
2024-03-18T10:07:03+08:00
2024-03-18T10:07:03+08:00
轰隆隆
https://segmentfault.com/u/fulng
0
<p>出现怪异的SQL如下:</p><pre><code>SELECT *
FROM teacher
WHERE
DATE_FORMAT(DATE_ADD('2023-11-01',INTERVAL FLOOR(RAND() * DATEDIFF (CURDATE(), '2023-11-01')) DAY),'%Y-%m') = DATE_FORMAT(create_time, '%Y-%m');</code></pre><p>原始需求:<br>查询从给定月份到现在的时间段内,查询随机某月的数据。</p><p>当前现状:<br>根据前面提供的SQL查出来的数据,看条目数应该是对的,但是具体的数据却不对。有没有大神看一下问题出在哪里,亦或还有否更好的思路。</p><p>创建表</p><pre><code>create table `teacher` (
`id` int (11),
`name` varchar (96),
`create_time` datetime
); </code></pre><p>插入数据</p><pre><code>insert into `teacher` (`id`, `name`, `create_time`) values('10','张三','2023-11-17 09:34:23');
insert into `teacher` (`id`, `name`, `create_time`) values('12','李四','2023-10-21 09:34:55');
insert into `teacher` (`id`, `name`, `create_time`) values('13','王五','2023-12-08 09:35:13');
insert into `teacher` (`id`, `name`, `create_time`) values('14','赵六','2023-12-28 09:35:48');
insert into `teacher` (`id`, `name`, `create_time`) values('15','孙七','2024-01-11 09:36:31');
insert into `teacher` (`id`, `name`, `create_time`) values('16','钱八','2024-01-25 09:38:15');
insert into `teacher` (`id`, `name`, `create_time`) values('17','老九','2024-03-07 09:38:53');
insert into `teacher` (`id`, `name`, `create_time`) values('18','老十','2024-03-10 09:39:35');
insert into `teacher` (`id`, `name`, `create_time`) values('19','十一','2024-03-11 09:41:36');</code></pre>
正则校验密码问题?
https://segmentfault.com/q/1010000044721114
2024-03-18T09:41:11+08:00
2024-03-18T09:41:11+08:00
Alex
https://segmentfault.com/u/alex_63b3e350d9e10
0
<p>正则校验密码问题<br>实现包含3位及以上的数字字母密码,不允许为连续/重复的数字或字母,包括正序和倒序,例如:Abc.123、Aaaa@123、Zyx@321</p><p>使用正则校验密码正则好像不能校验,用程序写没啥思路</p>
如何在Avue-Crud中控制表头列的显隐而不改变顺序?
https://segmentfault.com/q/1010000044721037
2024-03-18T09:11:33+08:00
2024-03-18T09:11:33+08:00
flyingsun
https://segmentfault.com/u/flyingsun
0
<p>avue-crud表头显隐</p><p>我通过监听watch,可以通过按钮控制表头某一列的显隐<br><img width="720" height="308" src="/img/bVdbN87" alt="image.png" title="image.png"><br>但是出现了一个问题,隐藏后再显示的列会出现在最后一列,不是原先的顺序<br>下面是原来的顺序<br><img width="723" height="393" src="/img/bVdbN88" alt="image.png" title="image.png"><br>下面是一次隐显后的顺序<br><img width="723" height="387" src="/img/bVdbN89" alt="image.png" title="image.png"><br>我输出了一下显隐后的column,发现和原来是一样的<br><img width="625" height="413" src="/img/bVdbN9b" alt="image.png" title="image.png"><br>现在我想解决这个表头列顺序改变的问题</p>
想请教一个多文件上传的需求实现?
https://segmentfault.com/q/1010000044721034
2024-03-18T09:09:18+08:00
2024-03-18T09:09:18+08:00
CaixK
https://segmentfault.com/u/66ccff_5b98806c3d7cd
0
<p>想请教巨佬们一个需求问题,</p><p>使用环境是一个后台element admin这种</p><p>需求是有一个待上传列表,是市里各个学校的列表,每个学校可能会一下子上传几十份pdf文件,那样的话一下子调用几十次上传接口,领导的意思是多选文件之后合并成一个大文件上传(有点没明白),请问有谁有合适一点的解决方案呢</p>
求助:vue页面中调用将js中暴露出来的方法失败?
https://segmentfault.com/q/1010000044721030
2024-03-18T09:03:29+08:00
2024-03-18T09:03:29+08:00
唐_璜Taro
https://segmentfault.com/u/tang_taro
0
<p>这是功能是直接从原生js直接转成vue2,因为需要在在record.vue中调用一下main.js中的方法进行初始化,首先将main.js的start方法export导出,因为main.js中有着不少dom操作方法,所以引入mian.js放到mounted生命周期中,但是现在无论怎么都无法在Record.vue页面中调用main.js中暴露出来的strat方法,这是为什么呢,应该怎么修改,求大佬解答</p><p>如果通过 import {start} from './main.js'进行引入,则main.js原有的操作DOM的事件将不会进行加载,这些事件是必须先加载的</p><p><img width="723" height="386" src="/img/bVdbN8W" alt="image.png" title="image.png"></p>
springboot项目如果不要求前端的日期时间格式?
https://segmentfault.com/q/1010000044720963
2024-03-18T08:18:04+08:00
2024-03-18T08:18:04+08:00
葬天尘
https://segmentfault.com/u/zangtianchen
1
<p>springboot项目中一个实体类声明了如下的日期类型属性</p><pre><code> @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date date;</code></pre><p>那么前端传递参数时必须带有时间,否则后台会报错。我的目标是能否不使用上面两个注解,不管前端传递来的该属性带不带时间都可以正常保存到数据库中(如果没有时间则后台自动补齐00:00:00,或者没有时间也能正常保存到MYSQL的话java就不做补齐的工作了)。要实现这个目标我要如何做?还有就是有个之前的老项目是spingmvc的项目(前端页面jsp)做法是否和springboot中一样?</p><p>还有点兼容的问题,有时前端传递来的日期时间属性格式是:2024-03-18T12:11:10<br>能否一起兼容了?</p>
在使用 vue-draggable-next的时候,如何获取到拖动过程中,拖到了哪个元素上?
https://segmentfault.com/q/1010000044720851
2024-03-18T00:06:12+08:00
2024-03-18T00:06:12+08:00
only_darker
https://segmentfault.com/u/only_darker
0
<p>在使用 vue-draggable-next的时候,如何获取到拖动过程中,拖到了哪个元素上?</p><p>问题是这样的,我有两个组件,通过一个父组件进行挂载,左侧的drag组件可以拖入到右侧组件,右侧组件有两个draggable的div。我想分别拖入到不同的div中,现在的问题是无法知道我到底拖到了哪个div元素上,导致数据添加不正确,如何解决这个问题?尝试过 add、move事件,但是move事件获取到的是当前元素的div,拿不到右侧组件的div。</p>