找到解決方法如下:
import React from 'react'
import { Editor } from 'react-draft-wysiwyg'
import 'react-draft-wysiwyg/dist/react-draft-wysiwyg.css'
import styles from './Editor.less'
const DraftEditor = (props) => {
return (<Editor
localization={{ locale: 'zh' }}
toolbarClassName={styles.toolbar}
wrapperClassName={styles.wrapper}
editorClassName={styles.editor}
toolbar={{
fontFamily: { options: ['宋體', '黑體', '楷體', '微軟雅黑','Arial', 'Georgia', 'Impact', 'Tahoma', 'Times New Roman', 'Verdana',]}
}}
{...props}
/>)
}
export default DraftEditor
由于沒有報錯,我自己猜八成是路徑問題,最后賭了一手路徑,試著改了router/router.js下的base: "路徑",改成和服務器輸出的路徑一樣,最后出來效果了。
服務器輸出的是http://localhost:3000/admin/main.html(這是app的內容),對應的base選項填上/admin/main.html
@InitBinder
public void initBinder(WebDataBinder binder) {
binder.registerCustomEditor(List.class,new PropertyEditorSupport() {
@Override
public void setAsText(String text) {
this.setValue(text);
}
});
}
使用SpringMVC的數據綁定,請求參數到達時進行初始化數據綁定
根據你自身的需求在setAsText方法中進行定制化操作
我分享下我的前后臺請求的邏輯
這個是axios的:
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
//axios.defaults.headers.post['Content-Type'] = 'multipart/form-data'
axios.defaults.retry = 4
axios.defaults.timeout = 10000
axios.defaults.withCredentials = true
// code狀態(tài)碼200判斷
axios.interceptors.response.use((res) => {
if(res.status === 654) {
console.log('請求超時!')
}
if(res.data.code < 200 && res.data.code >= 300) {
console.error('數據返回有誤')
return Promise.reject(res)
}
return res
}, (error) => {
let config = error.config
if(!config || !config.retry) return Promise.reject(error)
config.__retryCount = config.__retryCount || 0
if(config.__retryCount >= config.retry) {
console.log('promise error:' + error)
return Promise.reject(error)
}
config.__retryCount += 1
let backoff = new Promise(function(resolve) {
setTimeout(function() {
resolve()
}, config.retryDelay || 1)
})
return backoff.then(function() {
return axios(config)
})
})
Node使用express搭建的服務器:
// 跨域設置
app.all("*", function(req, res, next) {
if(req.path !== "/" && !req.path.includes(".")) {
res.header("Access-Control-Allow-Credentials", true);
// 這里獲取 origin 請求頭 而不是用 *
res.header("Access-Control-Allow-Origin", req.headers["origin"] || "*");
res.header("Access-Control-Allow-Headers", 'Content-Type,Content-Length, Authorization,\'Origin\',Accept,X-Requested-With');
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
res.header("Content-Type", "application/json;charset=utf-8");
}
let ip = getClientIp(req)
ul.getByIP(ip)
io.emit('updateMapBack', JSON.stringify(m.getMap()))
next();
});發(fā)下你js的代碼。
myData 定義成全局變量不就是了嗎
你好,你有做過在做菜菜單添加徽標數的嗎?
其實更多的是工作流程,和工作協同的區(qū)別。
你這樣被不能幫你解決
會的,但是 webpack2 + uglify 會在打包結果中刪除掉這個
請檢查圖片所在的文件夾,drawable文件夾是有好幾個的,如果你只要這一個像素類型的圖片,建議把他/它放在drawable-hdpi下
虛擬機上可以,但真機不行可能就是因為上述的原因
找到user-select
user-select: none;
你提供的網站我試過了 可以復制
()是執(zhí)行。
return f2;返回f2方法
return f2();返回f2執(zhí)行結果
翻墻找到了:
如果npm uninstall -g yarn之后,yarn還是可用,可以嘗試手動刪除(Mac OSX)
rm -rf /usr/local/lib/node_modules/yarn
rm -rf /usr/local/bin/yarn yarnpkg
就你給的code而言,不會有影響的,用chrome memery工具檢測一下,remove children之后,EventListener對象的數量會減少。
樓上jzoom的例子之所以能跑通,讓你感覺Listener沒有自動gc,是因為他的div是全局變量,所以即使從dom tree上移除,div對象仍然存在于global上被global引用著,那gc機制自然不會去清理它的listener,而題主你的div的scope是在addDom這個function里的,所以一旦999999個div從dom tree上被移除,則沒有對象引用它們,則它們身上的listener也會自動被gc。
每次重新加載圖片的問題。
DISTINCT 針對的是select 后面的所有字段, 如果你想keyword不重復,但對query_date不care, 你可以只取keyword, 如果你想取keywork和相應的最大日期的query_date,可以用group by... having ....
如:
drop table t_query_keyword;
create table t_query_keyword(
user_id varchar(38) ,
keyword varchar(100),
query_date date
);
insert into t_query_keyword (user_id, keyword, query_date)
values ('748761E1-260F-4E61-9D0D-BE6D122560E2', 'java', '2018-01-01'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'sql', '2018-01-02'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'sql', '2018-01-03'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'sql', '2018-01-03'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'js', '2018-01-04'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'html', '2018-01-05'),
('748761E1-260F-4E61-9D0D-BE6D122560E5', 'docker', '2018-01-06'),
('748761E1-260F-4E61-9D0D-BE6D122560E2', 'kvm', '2018-01-07');
SELECT DISTINCT
t.keyword,
t.query_date
FROM t_query_keyword t
WHERE t.user_id = '748761E1-260F-4E61-9D0D-BE6D122560E2'
ORDER BY t.query_date DESC
LIMIT 6;
返回的結果是:
+---------+------------+
| keyword | query_date |
+---------+------------+
| kvm | 2018-01-07 |
| html | 2018-01-05 |
| js | 2018-01-04 |
| sql | 2018-01-03 |
| sql | 2018-01-02 |
| java | 2018-01-01 |
+---------+------------+
6 rows in set (0.00 sec)
keyword=sql, query_date=2018-01-03有兩條,但因為DISTINCT, 只返回其中一條。
或者用如下的sql, 可以保證keyword不重復。
SELECT
keyword, max(query_date) as query_date
FROM t_query_keyword
WHERE user_id = '748761E1-260F-4E61-9D0D-BE6D122560E2'
group by keyword
ORDER BY query_date DESC
LIMIT 5;
返回的結果是
+---------+------------+
| keyword | query_date |
+---------+------------+
| kvm | 2018-01-07 |
| html | 2018-01-05 |
| js | 2018-01-04 |
| sql | 2018-01-03 |
| java | 2018-01-01 |
+---------+------------+
5 rows in set (0.00 sec)
Object.assign的目的是將 val中的所有屬性復制給 this.modalFormData, 不等同于將val整個賦值給this.modalFormData。
舉例,請自行對比
var modalFormData = {x:1};
var val = {y:2};
var newModal = Object.assign(modalFormData, val);
console.log(newModal); // {x:1, y:2}
var modalFormData = {x:1};
var val = {y:2};
modalFormData = val;
console.log(modalFormData); // {y:2}問題就是setState是異步的。
this.setState({
startShowNum: index * 8,
showArr: arr.slice(this.state.startShowNum, (this.state.startShowNum + 8))
});
修改這段代碼為:
this.setState({
startShowNum: index * 8,
showArr: arr.slice(index * 8, (index * 8 + 8))
});北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數據專業(yè)的國家
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產業(yè)為響應國家深化產教融合/校企合作的政策,積極推進“中國制造2025”,實現中華民族偉大復興的升級產業(yè)鏈。利用北京大學優(yōu)質教育資源及背
博為峰,中國職業(yè)人才培訓領域的先行者
曾工作于聯想擔任系統開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統架構師,美國AngelEngineers Inc. 系統架構師。