不需要,我們這里的接口是同一套,前后端交換JSON。
body{background-color: #fff!important;}
app.get('/api', function (req, res) {
res.header("Content-Type", "application/json; charset=utf-8")
res.json({"title":"中文"})
})瀏覽器自己的功能,你要禁用使用autocomplete="off"
console.log(this.$root.mess)
組件中的 this,是指的組件,而你要獲取的mess是根組件的數(shù)據(jù)。
更好的解決方式應(yīng)該是是把mess作為子組件的props傳入。
Vue.component("panel", {
template: "#panel-tpl",
props: ['mess'],
methods: {
alertTitle: function(){
console.log(this.mess);
}
}
})
<panel :mess="mess"></panel>
這樣在子組件中就可以通過this.mess獲取到值了。
Mapper.xml bean 和數(shù)據(jù)庫字段寫錯
搞定了,Vue new的時候data元素多設(shè)置幾個。
當(dāng)這些數(shù)據(jù)改變時,視圖會進行重渲染。值得注意的是只有當(dāng)實例被創(chuàng)建時 data 中存在的屬性才是響應(yīng)式的。也就是說如果你添加一個新的屬性,比如:
vm.b = 'hi'
那么對 b 的改動將不會觸發(fā)任何視圖的更新。如果你知道你會在晚些時候需要一個屬性,但是一開始它為空或不存在,那么你僅需要設(shè)置一些初始值。比如:
對于界面上的元素列表也需要這樣?data里面定義的時候只有一個元素,后面增加的也不會得到渲染。
定義的時候里面放十個,動態(tài)獲取到列表后全部刪除,0~9之內(nèi)的則會被渲染。
文檔里有寫啊
https://zh.nuxtjs.org/api
asyncData 可以接受一個 context 參數(shù),包含了當(dāng)前環(huán)境所有信息
context.store 就能獲取到 vuex 實例了,具體內(nèi)容打開鏈接進去看吧
運用另外一個分頁插件jquery.twbsPagination.js
jquery.twbsPagination.js
不會有殘留,不是全局按照的node項目,依賴都在node_modules下面
這些基本都是模塊化方案,實際上自己頁很容易寫出模塊化的原理
如webpack
(function(modulesArr) {
var rootModule = {};
function __require__(id) {
if (rootModule[id]) {
return rootModule[id].exports;
}
var currentModule = modulesArr[id];
var module = {
id,
exports: {}
};
currentModule.call(module.exports, module.exports, module, __require__);
currentModule[id] = module;
return module.exports;
}
return __require__(0);
})([
function(exports, module, require) {
var m1 = require(1);
console.log(m1);
},
function(exports, module, require) {
exports.msg = 'Hello World';
var m2 = require(2);
m2();
},
function(exports, module, require) {
module.exports = function() {
var str = 'Hello World';
console.log(str);
return str;
};
}
]);
我自己實現(xiàn)的browser端模塊化
(function(global) {
'use strict';
var errMsg = Math.random().toString(32).substr(2);
var rootModule = {};
function ModuleCtor(id) {
if (!this || this.__proto__ !== ModuleCtor.prototype) {
return new ModuleCtor(id);
}
this.id = id;
this.exports = {};
this.loaded = !1;
}
function define(id, fn) {
if (typeof id === 'function') {
fn = id;
id = document.currentScript
? document.currentScript.src
: Math.random()
.toString(32)
.substr(2);
}
if (typeof id !== 'string') {
id = '' + id;
}
var module = ModuleCtor(id);
exec();
function __require__(src) {
if (rootModule[src] && rootModule[src].__proto__ === ModuleCtor.prototype) {
return rootModule[src].exports;
}
loadScript(src, function() {
exec();
});
throw new Error(errMsg);
}
function exec() {
try {
fn.call(module.exports, module.exports, module, __require__);
module.loaded = !0;
rootModule[id] = module;
} catch (err) {
if (err.message !== errMsg) {
throw err;
}
}
}
}
function loadScript(src, callback) {
var script = document.createElement('script');
script.src = src;
script.onload = function() {
callback && callback(src);
};
document.body.appendChild(script);
return script;
}
global.define = define;
})(window);
本質(zhì)都是js沒有模塊,所以我們就想到全局暴露一個rootModule對象,每一個鍵都是一個模塊,exports對象是依賴的暴露。
如a.js
module.exports = 'Hello World';
b.js
var chars = require('./a');
process.stdout.write(chars + '\n'); // Hello World
但是我們怎么實現(xiàn)呢,(一)編譯:如webpack,(二)暴露一個函數(shù),如requirejs、seajs。
webpack 可以配置 output libraryTarget: 'umd', library: 'globalVarName' 打題主說的這種umd包,兼容瀏覽器,requirejs,node環(huán)境。
另外我還是忍不住吐槽一下seajs的垃圾,一個文件的多個require發(fā)請求時沒有順序之分,字符串正則來分析依賴。。。如果jQuery的plugin依賴jQuery,需要對jQueryplugin改一下代碼討個套個客,不能直接想requirejs直接在config中聲明依賴。垃圾。當(dāng)然我自己寫的模塊加載更垃圾,連依賴都不分析。多try幾次必然成功。
Cannot convert undefined or null to object
不能轉(zhuǎn)化 undefined null 為 對象
就是后臺 不一定 傳來數(shù)據(jù) 應(yīng)該是parse問題
JSON.parse(res.requset.response || {menus: 默認值})
canvas上畫的球 你肯定能獲取到球的圓心坐標(biāo),只需要判斷你鼠標(biāo)點擊的點和圓心的距離, 是否小于半徑,小于半徑就說明在圓內(nèi) 就可以出發(fā)點擊事件
map 接受的是返回數(shù)組內(nèi)單個值的函數(shù),而不是一個操作:
_this.opts.map(item => item * 12)
這一句之后,_this.opts 就變成 [12, 24] 了。
float 會脫離文檔流,相當(dāng)于飛起來了 :) 可以嘗試用 border-right
fs.readFile('test.json', 'utf8', (err, data) => {
if (err) {
console.log(err);
}
const d = JSON.parse(data);
console.log(d);
});
vuex里的?
element-ui form表單的驗證只要保證 你綁定的:model + prop 能在data里找到對應(yīng)的值就能搜索到,然后驗證你的validator了
比如你:model="a"
那么驗證b1:{c: ''}的prop就應(yīng)該是prop="b1.c"
英語不熟練的話,你把那句error語句copy下百度翻譯就知道是什么原因了
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。